You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
SOP/sop-sdk/sdk-rust/sdk-test/src/main.rs

76 lines
3.6 KiB

extern crate sdk;
use std::collections::HashMap;
use sdk::client::OpenClient;
use sdk::http::UploadFile;
use sdk::request::BaseRequest;
use sdk::request::memberinfoget::MemberInfoGetRequest;
use sdk::response::memberinfoget::MemberInfoGetResponse;
use std::env;
fn main() {
// 创建请求客户端
let client = OpenClient {
// 应用ID
app_id: "2020051325943082302177280",
// 应用私钥
private_key: "MIICXAIBAAKBgQCHJlAPN+1dCbgc3HiahQkT2W/skecGWOCkSX4CPvEc8oIk6544\nxihEwShHnfrapiQdF2fndv5agrhg4FyOHheST42L5MnCk+4Km+mWm5GDvmFS7Sa2\naZ5o3regY0MUoJ7D74dYjE3UYFuTujAXiXjGpAwa9qOcKotov5LCkSfUeQIDAQAB\nAoGAB1cyw8LYRQSHQCUO9Wiaq730jPNHSrJW4EGAIz/XMYjv/fCgx0lnDEX4CbzI\nUGoz/bME4R721YRyXoutJ0h14/cGrt/TEn/TMI0xnISzJHr8VSlyBkQEdfO/W3LO\nqjs/UYq2Bz4+kJROJHreM+7d5hiIWLzLBlyI8cSU92ySmHECQQDwju2SoRu88kQP\n1qr4seZyKQa8DHTVyCoa6LtPLXyJsdgWgY4KyqJHwMUumEC2Zhhu833CR0ZXbfta\nuQDmwAVJAkEAj9M225jrPasaD5vPO7thxtEqgV4F/ZyNKH0Z8bDH27KaKkQ+8GMt\nkxwKVckZXs2bMvg/6tCiDZkWAxawNrvFsQJBANmTrPWOmpQPW9gnhYRjA9gFm33C\nlno2DT9BeQloTtgL7zKMA3lnRdg4VyCJvR48waS4vupVpR228D1iT5pl22ECQF1M\nJUzkcM0rPheb+h2EW1QOgWU0Keyvbj4ykO7gv3T78dezN6TWoUzJpsapUiTWeXPh\n6AyZ1FW/1bChOiP3QLECQGAbObmsYlN0bjzPYChwWYeYjErXuv51a44GZCNWinFw\nGGiHU9ZAqF8RzmBVW4htwj0j/Yry/V1Sp0uoP0zu3uA=",
// 请求地址
url: "http://localhost:7071/prod/gw68uy85",
};
// 业务参数
let mut biz_model = HashMap::new();
biz_model.insert("name", "jim".to_string());
biz_model.insert("address", "xx".to_string());
biz_model.insert("age", "22".to_string());
let mut files = vec![];
// 添加上传文件
/*let mod_dir = env::current_dir().unwrap().display().to_string();
files = vec![
UploadFile { name:"file1", path: format!("{}/{}", &mod_dir, "aa.txt")},
UploadFile { name:"file2", path: format!("{}/{}", &mod_dir, "bb.txt") },
];*/
// 创建请求,设置业务参数
let request = MemberInfoGetRequest {
base: BaseRequest { biz_model: biz_model, files: files }
};
// 发送请求
let response:MemberInfoGetResponse = client.execute(request);
// 成功
if response.sub_code.len() == 0 {
println!("resp:{:#?}", response)
} else {
println!("error:{:#?}", response)
}
}
#[cfg(test)]
mod tests {
use sdk::sign::{HashType, SignUtil};
use sdk::http::HttpTool;
use std::collections::HashMap;
#[test]
fn it_works() {
let content = "123";
let private_key = "MIICXAIBAAKBgQCHJlAPN+1dCbgc3HiahQkT2W/skecGWOCkSX4CPvEc8oIk6544\nxihEwShHnfrapiQdF2fndv5agrhg4FyOHheST42L5MnCk+4Km+mWm5GDvmFS7Sa2\naZ5o3regY0MUoJ7D74dYjE3UYFuTujAXiXjGpAwa9qOcKotov5LCkSfUeQIDAQAB\nAoGAB1cyw8LYRQSHQCUO9Wiaq730jPNHSrJW4EGAIz/XMYjv/fCgx0lnDEX4CbzI\nUGoz/bME4R721YRyXoutJ0h14/cGrt/TEn/TMI0xnISzJHr8VSlyBkQEdfO/W3LO\nqjs/UYq2Bz4+kJROJHreM+7d5hiIWLzLBlyI8cSU92ySmHECQQDwju2SoRu88kQP\n1qr4seZyKQa8DHTVyCoa6LtPLXyJsdgWgY4KyqJHwMUumEC2Zhhu833CR0ZXbfta\nuQDmwAVJAkEAj9M225jrPasaD5vPO7thxtEqgV4F/ZyNKH0Z8bDH27KaKkQ+8GMt\nkxwKVckZXs2bMvg/6tCiDZkWAxawNrvFsQJBANmTrPWOmpQPW9gnhYRjA9gFm33C\nlno2DT9BeQloTtgL7zKMA3lnRdg4VyCJvR48waS4vupVpR228D1iT5pl22ECQF1M\nJUzkcM0rPheb+h2EW1QOgWU0Keyvbj4ykO7gv3T78dezN6TWoUzJpsapUiTWeXPh\n6AyZ1FW/1bChOiP3QLECQGAbObmsYlN0bjzPYChwWYeYjErXuv51a44GZCNWinFw\nGGiHU9ZAqF8RzmBVW4htwj0j/Yry/V1Sp0uoP0zu3uA=";
let sign = SignUtil::rsa_sign(content, private_key, HashType::Sha256);
println!("sign:{}", sign);
}
#[test]
fn test_http() {
let mut map = HashMap::new();
map.insert("aaa", "bbb");
let response = HttpTool::get("http://baidu.com", &map, &HashMap::new());
println!("response:{:#?}", response);
}
}