1 个稳定版本
1.0.0 | 2024年3月27日 |
---|
#23 in #public-api
49KB
497 行
Discovery Connect (Rust)
Rust的Discovery API数据交换接口,具有C兼容的绑定。
- bindings/cpp: C兼容的绑定 - 试验性
- connect: Rust GraphQL接口
- example: GraphQL接口的终端应用程序
入门指南
请确保您已根据安装说明安装了有效的Rust。
打开终端并输入
cargo run --p example
您应该看到以下输出
Usage: ExampleUploadAcquisition <api_url> <client_id> <client_secret> <username> <password> <timeout> <workbook_uuid> <acquisition_name> <file1> <file2> ...
如果您收到错误,请检查或更新您的Rust安装。
编译
您可以使用 cargo build --release
生成一个库,您可以在项目中包含它。
cargo build --release
在target/release/中自动生成C接口
include/discovery.h
- 头文件(跨平台)libdiscovery.so
- 共享库(仅限Linux)libdiscovery.dylib
- 共享库(仅限MacOS)discovery.dll
- 共享库(仅限Windows)
测试
要访问Discovery API,您需要
- 有效的Discovery服务账户凭证
- 有效的API客户端凭证
在与Ikerian合作特定项目时,这些凭证将作为项目设置的一部分发放给您。如果您尚未获得凭证,请联系您的联系人。
以下为Linux / Mac的示例调用
API_URL='https://api.example.discovery.com' \
CLIENT_ID='12345678-1234-1234-1234-1234567890ab' \
CLIENT_SECRET='1234567890' \
USER='[email protected]' \
PASS='abcdefghij' \
TIMEOUT=300 \
WORKBOOK_UUID='12345678-1234-1234-1234-1234567890ab' \
ACQUISITION_NAME='test-acquisition' \
cargo run -q --p example \
$API_URL $CLIENT_ID $CLIENT_SECRET $USER $PASS $TIMEOUT \
$WORKBOOK_UUID $ACQUISITION_NAME \
00000001.dcm 00000002.dcm 00000003.dcm 00000004.dcm
以下为Windows的示例调用
set API_URL= 'https://api.example.discovery.com'
set CLIENT_ID='12345678-1234-1234-1234-1234567890ab'
set CLIENT_SECRET='1234567890'
set USER='[email protected]'
set PASS='abcdefghij'
set TIMEOUT=300
set WORKBOOK_UUID='12345678-1234-1234-1234-1234567890ab'
set ACQUISITION_NAME='test-acquisition'
cargo run -q --project example/DiscoveryExample.csproj ^
%API_URL% %CLIENT_ID% %CLIENT_SECRET% %USER% %PASS% %TIMEOUT% ^
%WORKBOOK_UUID% %ACQUISITION_NAME% ^
00000001.dcm 00000002.dcm 00000003.dcm 00000004.dcm
许可
版权所有 2023 Ikerian AG
根据Apache许可证版本2.0(“许可证”)许可;除非法律要求或经书面同意,否则不得使用此文件,除非符合许可证。您可以在以下位置获取许可证副本:
https://apache.ac.cn/licenses/LICENSE-2.0
除非适用法律要求或经书面同意,否则在许可证下分发的软件按“原样”基础分发,不提供任何明示或暗示的保证或条件。有关许可证管理权限和限制的具体语言,请参阅许可证。
依赖项
~14–29MB
~506K SLoC