alipay_sdk_rust

所属分类:支付接口
开发工具:Rust
文件大小:0KB
下载次数:0
上传日期:2023-03-22 02:05:24
上 传 者sh-1993
说明:  支付宝支付sdk,
(Alipay payment sdk,)

文件列表:
Cargo.toml (719, 2023-03-21)
LICENSE (1063, 2023-03-21)
src/ (0, 2023-03-21)
src/biz/ (0, 2023-03-21)
src/biz/biz_content.rs (501, 2023-03-21)
src/biz/mod.rs (664, 2023-03-21)
src/biz/trade_app_pay.rs (906, 2023-03-21)
src/biz/trade_cancel.rs (764, 2023-03-21)
src/biz/trade_close.rs (760, 2023-03-21)
src/biz/trade_create.rs (958, 2023-03-21)
src/biz/trade_fastpay_refund_query.rs (920, 2023-03-21)
src/biz/trade_page_pay.rs (971, 2023-03-21)
src/biz/trade_page_refund.rs (991, 2023-03-21)
src/biz/trade_pay.rs (933, 2023-03-21)
src/biz/trade_precreate.rs (876, 2023-03-21)
src/biz/trade_query.rs (760, 2023-03-21)
src/biz/trade_refund.rs (867, 2023-03-21)
src/biz/trade_wap_pay.rs (1158, 2023-03-21)
src/cert.rs (4598, 2023-03-21)
src/lib.rs (5306, 2023-03-21)
src/pay.rs (27570, 2023-03-21)
src/request.rs (5458, 2023-03-21)
src/response.rs (17640, 2023-03-21)
src/sign.rs (5388, 2023-03-21)
src/tests/ (0, 2023-03-21)
src/tests/ffactory.org_鍏閽.txt (392, 2023-03-21)
src/tests/ffactory.org_私钥.txt (1588, 2023-03-21)
src/tests/mod.rs (38, 2023-03-21)
src/tests/sign_test.rs (1478, 2023-03-21)
src/tests/trade_create_test.rs (3558, 2023-03-21)
src/util.rs (3462, 2023-03-21)

# [alipay_sdk_rust](https://github.com/wandercn/alipay_sdk_rust) [![crates.io](https://img.shields.io/crates/v/alipay_sdk_rust.svg?color=yellow)](https://crates.io/crates/alipay_sdk_rust) [![Released API docs](https://docs.rs/alipay_sdk_rust/badge.svg)](https://docs.rs/alipay_sdk_rust) [![GPL3 licensed](https://img.shields.io/github/license/wandercn/alipay_sdk_rust.svg)](./LICENSE) [![Downloads of Crates.io](https://img.shields.io/crates/d/alipay_sdk_rust.svg)](https://crates.io/crates/alipay_sdk_rust) [![Lines of code](https://img.shields.io/tokei/lines/github/wandercn/alipay_sdk_rust.svg)](#) [![Build](https://img.shields.io/github/actions/workflow/status/wandercn/alipay_sdk_rust/.github/workflows/rust.yml?branch=master)](#) [![Languages](https://img.shields.io/github/languages/top/wandercn/alipay_sdk_rust.svg)](#) Alipay sdk in rust 支付宝支付 SDK。只支持最安全的RSA2,公钥证书方式签名验证方式,默认只支持utf-8编码和JSON格式。目前只支持商户直接接入模式 RSA2密钥生成请参考 中的公钥证书方式生成,使用CSR文件申请,密钥格式必须使用PKCS1(非java适用) # Example ## apidoc ## alipay.trade.create(统一收单交易创建接口) 注意:开发环境使用沙箱环境下的CSR公钥证书配置调试代码,生产环境需要切换正式申请的公钥证书配置。沙箱环境配置参考 (如下的Example使用的是沙箱环境下本人申请的自定义公钥证书) ```rust use std::io::Result; use alipay_sdk_rust::biz::{self, BizContenter}; use alipay_sdk_rust::pay::{PayClient, Payer}; use alipay_sdk_rust::response::TradeCreateResponse; fn main() -> Result<()> { let out_trade_no = gostd::time::Now().UnixNano().to_string(); let mut biz_content = biz::TradeCreateBiz::new(); biz_content.set_subject("huawei Mate50"); biz_content.set_out_trade_no(&out_trade_no); // "1620630871769533112" biz_content.set_total_amount("5"); biz_content.set("seller_id", "2088621955702975"); biz_content.set_buyer_id("2088102175953034"); biz_content.set("Timestamp", "2022-07-11 16:09:04");/// let client = new_pay_client()?; let res = client.trade_create(&biz_content)?; println!("{}", serde_json::to_string(&res)?); Ok(()) } fn new_pay_client() -> Result { let client = PayClient::builder() .api_url("https://openapi.alipaydev.com/gateway.do") .app_id("2021000117650139") .alipay_root_cert_sn("687b59193f3f462dd5336e5abf83c5d8_02941eef3187dddf3d3b83462e1dfcf6") .alipay_public_key("MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAoEz4Tegg1Ytfn2N+jWzDTOBbUNhcpIXz7dV3K8yIsDzinPwYTzzZhlCLYlKbfJGpSDVU0K3I6TnyGfNPEg+R7EC/3ycY1nETh8mxQ4dgrz8irKlLxSRDHVtPg4luncDz2u0hMab9QJdqF8DXD5H+r0Pdt6CSJgKJqLa0awPV3/8cTQZbhZ4ontnRdcwWWcp4/TunkEc891Aa5FmzWp4hgBYcu3BGcazS1HQA4r6wTwRkiqKsCwZeVTag4CiOeqe/vRFTxTMKF4gjRzdhTapUfcBCmXblEA3i8/7OILEyNHceRAxxxIpUjTyoRJ4/2xd0kWbw1gmkLFM0Fzee0eVgoQIDAQAB") .app_cert_sn("8c68b9753e5b9e0bb7704a981936ecce") .charset_utf8() .format_json() .private_key("MIIEogIBAAKCAQEAog0N+rHllTO+e42Bc5mpvowolWVStyurL3Ou/86uRMN8im7WG1v44h09IaZpw4k6dpYEj89d7aLd7IwnBR5Wg84Ox2LMR/Y/Pzo10hjlvJJOk+igqepSTtB/4UX0cG/9tWceHAWOFuD8uw/SSJegC91a0MmLUBUpd4wWnN1iOSi0442iNvNk79Z6xLKIs4LNJGCNddxcofvpdqq4/5ywxHo24m5zPQf6/ttGk5jQQVrF+y2ckdHKd2h7ZSOYI7nzlzbZqK0UOMDuTvRs696fPa5wSEshE0RQBcn5iCltNTPyLsL3RGUUlsLOPsyT6cFZtUAKJ+J6wEqQxM5TrvNHywIDAQABAoIBAGDTuhGccFipVVzP3ZSsMV+4sZsqsrTd8+hjkCIrZbeSsvyoY2hvmRPKcreDjtiWS4eF9e3T8wTF9yKbT8lgKkORQQVkBDnPalUmO/hwhf0Z0rfQHQfKCiorrO129iqk0AyvM698pj0HbBt9xaE4cBoGxnfQpVxReLiEzRInucP6lhE79v1BwXCwMtRVvFPPIFaLJ02JGIywN+jnkpLwJj8TAu5u3JawlRnsFJgQeTdsHs4G6E11WBeo7OZtKPiKWMcj1nPU0Dnr+6VG89Rx/cxqlMrlTJBhKsLEzcVQwcc3M3UnMOU3Of7Mj1olnUGJ90apVukDFM5OI4Mfqi9etekCgYEA9ViJqVUdzJwqTK/gmbAsRvri9+rmWhfoqBMGeUoHktOGR/hMKJ/LrVa1oBIcVVNdLbI7Ks0kySGCa6qm/4YP2DCihj0GKwnHdPQ94pd3lWvUFZimNKi5V/+sREU0dKSqK3b7F0njtpR6zn+x8KpktO7izL3o8740KpSb7xGb0BUCgYEAqRaLShbDYjhSfvIzWAbuPNpvvtDWUNip1cuJwzTvDthECV5ltkhLGVWVnStch6OeTbK+llLDVw+j/YT1KetQcZ60tw2spn8nq6UvC2IFa2h61zpa8VWeRDfhyEIzoBE8DFAyeWjqYHyHJlh0BzRA2P3ts2LwwwhRa6OHhYzQ0F8CgYAUUvpMab2nNoSWh7dOY/a3Bo+IxA/DBNoEGldd8tD/y8AC9EGy19HykQ1Irldkhhxg7bPTDt1uP/Vi3+cnob5sRVMhVarOI+g++wCpZazFVwJhq5yRHi0EaiymFymKRB3IrfmM61UOyewGcTOXYTYoeuWU2mKS1n3RzS/BtS64JQKBgB2husVAGftzfVmL3l2V0VhOu3iIJpbCcXjrE3hnJWHHmpy9sztvjeGhsvd5Kt0GWm6pXWcAmAUA069RBpnTCCTxOCBAQDppXC1jZEwtYF/DTou7SUazx2mTFXk/yMZLXueVglLuhOxlxlV8+NBuYtLkJSzjsOes5H/lh5Fq7QknAoGAJ/LzTBLPy3terUgqejSxB4pr6PMbNd8wEStHN1RmR2v9Msuto7PUT7OOjQYIJwQLnxQUDr65bB5uR35v+L/rC6XUkzJM18YWvmOhFM8OsIYc4HdDhSmeFpMXdbd6entMJEX0bWrTbS/UdEcqE30kwuNuEFQ07LopGY1gBEe1G8U=") .public_key("MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAog0N+rHllTO+e42Bc5mpvowolWVStyurL3Ou/86uRMN8im7WG1v44h09IaZpw4k6dpYEj89d7aLd7IwnBR5Wg84Ox2LMR/Y/Pzo10hjlvJJOk+igqepSTtB/4UX0cG/9tWceHAWOFuD8uw/SSJegC91a0MmLUBUpd4wWnN1iOSi0442iNvNk79Z6xLKIs4LNJGCNddxcofvpdqq4/5ywxHo24m5zPQf6/ttGk5jQQVrF+y2ckdHKd2h7ZSOYI7nzlzbZqK0UOMDuTvRs696fPa5wSEshE0RQBcn5iCltNTPyLsL3RGUUlsLOPsyT6cFZtUAKJ+J6wEqQxM5TrvNHywIDAQAB") .sign_type_rsa2() .version_1_0() .build()?; Ok(client) } ``` # output ``` {"response":{"code":"10000","msg":"Success","trade_no":"2022071322001453030502038801","out_trade_no":"1620630871769533112"},"sign":"NgDoQ8wIjV0MY3/hA3BDvHOz3Jw7y6CTdGPD+Q4GBsvrAHDDRwbdki+jSGr66zutKtklUYJsizKVIGbmJmKKBhVSNdxWCRI++keWfHjWDLjy59hiRix0l8oFh+dhnXaQqjAXEjqOxjtd6WGgO9FhgX1Kz6GAZ8NJobwzXKor8fotA0E5ztpcPcRRF4KmdVioofAdSf0o9UTpM24uFmGuBwi0Cfae70jctpmn0CMXJ36g2FEe3pcZIWm/KWDAXwGH6daQccULwVjUYN01OyeM93wKuLXJwEhvIeLpJeW4AiXpU21W/qNgYINPkjRA/h/HmG6ooG14VfdHNXPjuQ0/sg==","alipay_cert_sn":"28e0499cc4ef722406edd30274314430"} ``` # 怎么获取证书序列号,提取证书公钥 ? ```rust use simplelog::{ ColorChoice, CombinedLogger, ConfigBuilder, LevelFilter, TermLogger, TerminalMode, ThreadLogMode, }; fn init_log() { let config = ConfigBuilder::new() .set_time_format_rfc3339() .set_thread_mode(ThreadLogMode::Names) .build(); CombinedLogger::init(vec![TermLogger::new( LevelFilter::Debug, config, TerminalMode::Mixed, ColorChoice::Always, )]) .expect("init log faield!"); } use alipay_sdk_rust::cert; const APP_CERT_SN_FILE: &str = "/Users/xxx/Documents/appCertPublicKey_2021000117650139.crt"; const ALIPAY_ROOT_CERT_FILE: &str = "/Users/xxxx/Documents/alipayRootCert.crt"; const ALIPAY_CERT_PUBLIC_KEY_RSA2_FILE: &str = "/Users/xxx/Documents/alipayCertPublicKey_RSA2.crt"; fn main() { init_log(); match cert::get_cert_sn(APP_CERT_SN_FILE) { Ok(sn) => { println!("app_cert_sn: {}", sn) } Err(err) => { println!("get app_cert_sn faild: {}", err) } } match cert::get_root_cert_sn(ALIPAY_ROOT_CERT_FILE) { Ok(sn) => { println!("alipay_root_cert_sn : {}", sn) } Err(err) => { println!("get alipay_root_cert_sn faild: {}", err) } } match cert::get_public_key_with_path(ALIPAY_CERT_PUBLIC_KEY_RSA2_FILE) { Ok(sn) => { println!("alipay_cert_public_key : {}", sn) } Err(err) => { println!("faild: {}", err) } } } ``` ## output ``` 2022-07-20T10:21:18.9427Z [DEBUG] (main) alipay_sdk_rust::cert: cert_path: /Users/xxx/Documents/appCertPublicKey_2021000117650139.crt app_cert_sn: 8c68b9753e5b9e0bb7704a981936ecce 2022-07-20T10:21:18.945293Z [DEBUG] (main) alipay_sdk_rust::cert: root_cert_path: "/Users/xxx/Documents/alipayRootCert.crt" alipay_root_cert_sn : 687b59193f3f462dd5336e5abf83c5d8_02941eef3187dddf3d3b83462e1dfcf6 2022-07-20T10:21:18.948418Z [DEBUG] (main) alipay_sdk_rust::cert: alipay_cert_path: "/Users/xxx/Documents/alipayCertPublicKey_RSA2.crt" alipay_cert_public_key : MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAoEz4Tegg1Ytfn2N+jWzDTOBbUNhcpIXz7dV3K8yIsDzinPwYTzzZhlCLYlKbfJGpSDVU0K3I6TnyGfNPEg+R7EC/3ycY1nETh8mxQ4dgrz8irKlLxSRDHVtPg4luncDz2u0hMab9QJdqF8DXD5H+r0Pdt6CSJgKJqLa0awPV3/8cTQZbhZ4ontnRdcwWWcp4/TunkEc891Aa5FmzWp4hgBYcu3BGcazS1HQA4r6wTwRkiqKsCwZeVTag4CiOeqe/vRFTxTMKF4gjRzdhTapUfcBCmXblEA3i8/7OILEyNHceRAxxxIpUjTyoRJ4/2xd0kWbw1gmkLFM0Fzee0eVgoQIDAQAB ```

近期下载者

相关文件


收藏者