global-open-sdk-python 1.4.1__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- com/__init__.py +1 -0
- com/alipay/__init__.py +0 -0
- com/alipay/ams/__init__.py +0 -0
- com/alipay/ams/api/__init__.py +0 -0
- com/alipay/ams/api/default_alipay_client.py +114 -0
- com/alipay/ams/api/exception/__init__.py +0 -0
- com/alipay/ams/api/exception/exception.py +6 -0
- com/alipay/ams/api/model/__init__.py +0 -0
- com/alipay/ams/api/model/account_balance.py +49 -0
- com/alipay/ams/api/model/account_holder_type.py +10 -0
- com/alipay/ams/api/model/account_type.py +11 -0
- com/alipay/ams/api/model/acquirer_info.py +86 -0
- com/alipay/ams/api/model/address.py +121 -0
- com/alipay/ams/api/model/agreement_info.py +35 -0
- com/alipay/ams/api/model/amount.py +39 -0
- com/alipay/ams/api/model/amount_limit.py +44 -0
- com/alipay/ams/api/model/amount_limit_info.py +44 -0
- com/alipay/ams/api/model/antom_path_constants.py +56 -0
- com/alipay/ams/api/model/apple_pay_configuration.py +56 -0
- com/alipay/ams/api/model/association_type.py +15 -0
- com/alipay/ams/api/model/attachment.py +54 -0
- com/alipay/ams/api/model/attachment_type.py +26 -0
- com/alipay/ams/api/model/auth_code_form.py +20 -0
- com/alipay/ams/api/model/auth_meta_data.py +32 -0
- com/alipay/ams/api/model/authentication_channel_type.py +12 -0
- com/alipay/ams/api/model/authentication_type.py +11 -0
- com/alipay/ams/api/model/authorization_error.py +27 -0
- com/alipay/ams/api/model/authorization_phase.py +10 -0
- com/alipay/ams/api/model/available_payment_method.py +31 -0
- com/alipay/ams/api/model/browser_info.py +65 -0
- com/alipay/ams/api/model/business_info.py +89 -0
- com/alipay/ams/api/model/business_type.py +13 -0
- com/alipay/ams/api/model/buyer.py +59 -0
- com/alipay/ams/api/model/cancellation_type.py +9 -0
- com/alipay/ams/api/model/capture_mode.py +10 -0
- com/alipay/ams/api/model/card_brand.py +54 -0
- com/alipay/ams/api/model/card_brand_type.py +13 -0
- com/alipay/ams/api/model/card_payment_method_detail.py +457 -0
- com/alipay/ams/api/model/card_verification_result.py +76 -0
- com/alipay/ams/api/model/certificate.py +65 -0
- com/alipay/ams/api/model/certificate_type.py +15 -0
- com/alipay/ams/api/model/challenge_action_form.py +63 -0
- com/alipay/ams/api/model/challenge_trigger_source_type.py +13 -0
- com/alipay/ams/api/model/challenge_type.py +14 -0
- com/alipay/ams/api/model/china_extra_trans_info.py +130 -0
- com/alipay/ams/api/model/class_type.py +11 -0
- com/alipay/ams/api/model/clearing_channel.py +7 -0
- com/alipay/ams/api/model/code_detail.py +53 -0
- com/alipay/ams/api/model/code_value_type.py +24 -0
- com/alipay/ams/api/model/company.py +141 -0
- com/alipay/ams/api/model/companyType.py +20 -0
- com/alipay/ams/api/model/company_unit_type.py +10 -0
- com/alipay/ams/api/model/contact.py +27 -0
- com/alipay/ams/api/model/contact_info.py +30 -0
- com/alipay/ams/api/model/coupon_payment_method_detail.py +107 -0
- com/alipay/ams/api/model/credit_pay_fee_type.py +9 -0
- com/alipay/ams/api/model/credit_pay_plan.py +41 -0
- com/alipay/ams/api/model/customer_belongs_to.py +47 -0
- com/alipay/ams/api/model/customer_id_type.py +14 -0
- com/alipay/ams/api/model/customs_info.py +28 -0
- com/alipay/ams/api/model/declaration_record.py +178 -0
- com/alipay/ams/api/model/delivery_method_type.py +10 -0
- com/alipay/ams/api/model/disable_reason_type.py +17 -0
- com/alipay/ams/api/model/discount.py +76 -0
- com/alipay/ams/api/model/discount_payment_method_detail.py +94 -0
- com/alipay/ams/api/model/display_type.py +33 -0
- com/alipay/ams/api/model/dispute_accept_reason_type.py +11 -0
- com/alipay/ams/api/model/dispute_evidence_format_type.py +10 -0
- com/alipay/ams/api/model/dispute_evidence_type.py +10 -0
- com/alipay/ams/api/model/dispute_judged_result.py +10 -0
- com/alipay/ams/api/model/dispute_notification_type.py +15 -0
- com/alipay/ams/api/model/entity_associations.py +67 -0
- com/alipay/ams/api/model/env.py +229 -0
- com/alipay/ams/api/model/extend_info.py +21 -0
- com/alipay/ams/api/model/external_payment_method_detail.py +76 -0
- com/alipay/ams/api/model/funding_type.py +16 -0
- com/alipay/ams/api/model/gaming.py +55 -0
- com/alipay/ams/api/model/goods.py +108 -0
- com/alipay/ams/api/model/grant_type.py +12 -0
- com/alipay/ams/api/model/http_method.py +9 -0
- com/alipay/ams/api/model/identity_check_result.py +9 -0
- com/alipay/ams/api/model/in_store_payment_scenario.py +14 -0
- com/alipay/ams/api/model/individual.py +97 -0
- com/alipay/ams/api/model/installment.py +41 -0
- com/alipay/ams/api/model/interest_free.py +85 -0
- com/alipay/ams/api/model/leg.py +116 -0
- com/alipay/ams/api/model/legal_entity_type.py +10 -0
- com/alipay/ams/api/model/lodging.py +95 -0
- com/alipay/ams/api/model/logo.py +31 -0
- com/alipay/ams/api/model/merchant.py +107 -0
- com/alipay/ams/api/model/merchant_customs_info.py +28 -0
- com/alipay/ams/api/model/merchant_info.py +79 -0
- com/alipay/ams/api/model/merchant_registration_info.py +96 -0
- com/alipay/ams/api/model/merchant_type.py +10 -0
- com/alipay/ams/api/model/method_type.py +13 -0
- com/alipay/ams/api/model/order.py +186 -0
- com/alipay/ams/api/model/order_code_form.py +66 -0
- com/alipay/ams/api/model/order_info.py +22 -0
- com/alipay/ams/api/model/os_type.py +12 -0
- com/alipay/ams/api/model/passengers.py +39 -0
- com/alipay/ams/api/model/paymentOptionDetail.py +43 -0
- com/alipay/ams/api/model/payment_detail.py +32 -0
- com/alipay/ams/api/model/payment_factor.py +73 -0
- com/alipay/ams/api/model/payment_method.py +86 -0
- com/alipay/ams/api/model/payment_method_category_type.py +29 -0
- com/alipay/ams/api/model/payment_method_detail.py +129 -0
- com/alipay/ams/api/model/payment_method_detail_type.py +30 -0
- com/alipay/ams/api/model/payment_method_info.py +53 -0
- com/alipay/ams/api/model/payment_method_type.py +13 -0
- com/alipay/ams/api/model/payment_method_type_item.py +40 -0
- com/alipay/ams/api/model/payment_option.py +137 -0
- com/alipay/ams/api/model/payment_result_info.py +159 -0
- com/alipay/ams/api/model/payment_verification_data.py +34 -0
- com/alipay/ams/api/model/period_rule.py +48 -0
- com/alipay/ams/api/model/period_type.py +12 -0
- com/alipay/ams/api/model/plan.py +106 -0
- com/alipay/ams/api/model/presentment_mode.py +11 -0
- com/alipay/ams/api/model/product_code_type.py +13 -0
- com/alipay/ams/api/model/promotion_info.py +66 -0
- com/alipay/ams/api/model/promotion_result.py +49 -0
- com/alipay/ams/api/model/promotion_type.py +10 -0
- com/alipay/ams/api/model/psp_customer_info.py +78 -0
- com/alipay/ams/api/model/quote.py +84 -0
- com/alipay/ams/api/model/redirect_action_form.py +63 -0
- com/alipay/ams/api/model/refund_detail.py +35 -0
- com/alipay/ams/api/model/refund_from_type.py +11 -0
- com/alipay/ams/api/model/refund_record.py +66 -0
- com/alipay/ams/api/model/registration_detail.py +119 -0
- com/alipay/ams/api/model/result.py +39 -0
- com/alipay/ams/api/model/result_status_type.py +27 -0
- com/alipay/ams/api/model/risk_score_detail.py +37 -0
- com/alipay/ams/api/model/risk_score_result.py +57 -0
- com/alipay/ams/api/model/risk_score_type.py +24 -0
- com/alipay/ams/api/model/scope_type.py +17 -0
- com/alipay/ams/api/model/settle_to_type.py +10 -0
- com/alipay/ams/api/model/settlement_bank_account.py +143 -0
- com/alipay/ams/api/model/settlement_detail.py +32 -0
- com/alipay/ams/api/model/settlement_info.py +31 -0
- com/alipay/ams/api/model/settlement_strategy.py +22 -0
- com/alipay/ams/api/model/shipping.py +61 -0
- com/alipay/ams/api/model/stock_info.py +26 -0
- com/alipay/ams/api/model/store.py +107 -0
- com/alipay/ams/api/model/subscription_notification_type.py +14 -0
- com/alipay/ams/api/model/subscription_status.py +12 -0
- com/alipay/ams/api/model/support_bank.py +49 -0
- com/alipay/ams/api/model/support_card_brand.py +39 -0
- com/alipay/ams/api/model/terminal_type.py +13 -0
- com/alipay/ams/api/model/three_ds_result.py +78 -0
- com/alipay/ams/api/model/transaction.py +80 -0
- com/alipay/ams/api/model/transaction_status_type.py +33 -0
- com/alipay/ams/api/model/transaction_type.py +36 -0
- com/alipay/ams/api/model/transfer_from_detail.py +44 -0
- com/alipay/ams/api/model/transfer_to_detail.py +108 -0
- com/alipay/ams/api/model/transit.py +46 -0
- com/alipay/ams/api/model/transit_type.py +12 -0
- com/alipay/ams/api/model/trial.py +47 -0
- com/alipay/ams/api/model/user_identity_type.py +11 -0
- com/alipay/ams/api/model/user_name.py +77 -0
- com/alipay/ams/api/model/wallet_payment_method_type.py +20 -0
- com/alipay/ams/api/model/web_site.py +54 -0
- com/alipay/ams/api/net/__init__.py +0 -0
- com/alipay/ams/api/net/default_http_rpc.py +58 -0
- com/alipay/ams/api/request/__init__.py +0 -0
- com/alipay/ams/api/request/alipay_request.py +41 -0
- com/alipay/ams/api/request/auth/__init__.py +0 -0
- com/alipay/ams/api/request/auth/alipay_auth_apply_token_request.py +88 -0
- com/alipay/ams/api/request/auth/alipay_auth_consult_request.py +160 -0
- com/alipay/ams/api/request/auth/alipay_auth_create_session_request.py +84 -0
- com/alipay/ams/api/request/auth/alipay_auth_query_token_request.py +32 -0
- com/alipay/ams/api/request/auth/alipay_auth_revoke_token_request.py +43 -0
- com/alipay/ams/api/request/declare/__init__.py +0 -0
- com/alipay/ams/api/request/declare/alipay_customs_declare_request.py +109 -0
- com/alipay/ams/api/request/declare/alipay_customs_query_request.py +28 -0
- com/alipay/ams/api/request/dispute/__init__.py +0 -0
- com/alipay/ams/api/request/dispute/alipay_accept_dispute_request.py +29 -0
- com/alipay/ams/api/request/dispute/alipay_download_dispute_evidence_request.py +40 -0
- com/alipay/ams/api/request/dispute/alipay_supply_defense_document_request.py +39 -0
- com/alipay/ams/api/request/marketplace/__init__.py +0 -0
- com/alipay/ams/api/request/marketplace/alipay_create_payout_request.py +53 -0
- com/alipay/ams/api/request/marketplace/alipay_create_transfer_request.py +53 -0
- com/alipay/ams/api/request/marketplace/alipay_inquire_balance_request.py +29 -0
- com/alipay/ams/api/request/marketplace/alipay_register_request.py +65 -0
- com/alipay/ams/api/request/marketplace/alipay_settle_request.py +51 -0
- com/alipay/ams/api/request/marketplace/alipay_settlement_info_update_request.py +62 -0
- com/alipay/ams/api/request/marketplace/alipay_submit_attachment_request.py +51 -0
- com/alipay/ams/api/request/merchant/__init__.py +0 -0
- com/alipay/ams/api/request/merchant/alipay_merchant_registration_info_query_request.py +30 -0
- com/alipay/ams/api/request/merchant/alipay_merchant_registration_request.py +78 -0
- com/alipay/ams/api/request/merchant/alipay_merchant_registration_status_query_request.py +42 -0
- com/alipay/ams/api/request/notify/__init__.py +0 -0
- com/alipay/ams/api/request/notify/alipay_auth_notify.py +67 -0
- com/alipay/ams/api/request/notify/alipay_capture_result_notify.py +64 -0
- com/alipay/ams/api/request/notify/alipay_dispute_notify.py +144 -0
- com/alipay/ams/api/request/notify/alipay_notify.py +28 -0
- com/alipay/ams/api/request/notify/alipay_pay_result_notify.py +111 -0
- com/alipay/ams/api/request/notify/alipay_refund_notify.py +67 -0
- com/alipay/ams/api/request/notify/alipay_subscription_notify.py +94 -0
- com/alipay/ams/api/request/notify/alipay_subscription_pay_notify.py +50 -0
- com/alipay/ams/api/request/notify/alipay_vaulting_notify.py +47 -0
- com/alipay/ams/api/request/pay/__init__.py +0 -0
- com/alipay/ams/api/request/pay/alipay_capture_request.py +70 -0
- com/alipay/ams/api/request/pay/alipay_create_order_request.py +94 -0
- com/alipay/ams/api/request/pay/alipay_create_session_request.py +225 -0
- com/alipay/ams/api/request/pay/alipay_pay_cancel_request.py +57 -0
- com/alipay/ams/api/request/pay/alipay_pay_consult_request.py +244 -0
- com/alipay/ams/api/request/pay/alipay_pay_query_request.py +60 -0
- com/alipay/ams/api/request/pay/alipay_pay_request.py +269 -0
- com/alipay/ams/api/request/pay/alipay_refund_query_request.py +51 -0
- com/alipay/ams/api/request/pay/alipay_refund_request.py +118 -0
- com/alipay/ams/api/request/pay/entry_code_payment_request.py +49 -0
- com/alipay/ams/api/request/pay/order_code_payment_request.py +46 -0
- com/alipay/ams/api/request/pay/user_presented_code_payment_request.py +50 -0
- com/alipay/ams/api/request/risks/__init__.py +0 -0
- com/alipay/ams/api/request/risks/inquiry_risk_score_request.py +68 -0
- com/alipay/ams/api/request/risks/risk_decide_request.py +121 -0
- com/alipay/ams/api/request/risks/risk_report_request.py +65 -0
- com/alipay/ams/api/request/risks/send_payment_result_request.py +73 -0
- com/alipay/ams/api/request/risks/send_refund_result_request.py +61 -0
- com/alipay/ams/api/request/subscription/__init__.py +0 -0
- com/alipay/ams/api/request/subscription/alipay_subscription_cancel_request.py +52 -0
- com/alipay/ams/api/request/subscription/alipay_subscription_change_request.py +140 -0
- com/alipay/ams/api/request/subscription/alipay_subscription_create_request.py +205 -0
- com/alipay/ams/api/request/subscription/alipay_subscription_update_request.py +104 -0
- com/alipay/ams/api/request/users/__init__.py +0 -0
- com/alipay/ams/api/request/users/alipay_init_authentication_request.py +79 -0
- com/alipay/ams/api/request/users/alipay_user_query_info_request.py +32 -0
- com/alipay/ams/api/request/users/alipay_verify_authentication_request.py +56 -0
- com/alipay/ams/api/request/vaulting/__init__.py +0 -0
- com/alipay/ams/api/request/vaulting/alipay_vaulting_payment_method_request.py +84 -0
- com/alipay/ams/api/request/vaulting/alipay_vaulting_query_request.py +29 -0
- com/alipay/ams/api/request/vaulting/alipay_vaulting_session_request.py +84 -0
- com/alipay/ams/api/response/__init__.py +0 -0
- com/alipay/ams/api/response/alipay_response.py +22 -0
- com/alipay/ams/api/response/auth/__init__.py +0 -0
- com/alipay/ams/api/response/auth/alipay_auth_apply_token_response.py +57 -0
- com/alipay/ams/api/response/auth/alipay_auth_consult_response.py +68 -0
- com/alipay/ams/api/response/auth/alipay_auth_create_session_response.py +34 -0
- com/alipay/ams/api/response/auth/alipay_auth_query_token_response.py +49 -0
- com/alipay/ams/api/response/auth/alipay_auth_revoke_token_response.py +21 -0
- com/alipay/ams/api/response/declare/__init__.py +0 -0
- com/alipay/ams/api/response/declare/alipay_customs_declare_response.py +54 -0
- com/alipay/ams/api/response/declare/alipay_customs_query_response.py +32 -0
- com/alipay/ams/api/response/dispute/__init__.py +0 -0
- com/alipay/ams/api/response/dispute/alipay_accept_dispute_response.py +24 -0
- com/alipay/ams/api/response/dispute/alipay_download_dispute_evidence_response.py +26 -0
- com/alipay/ams/api/response/dispute/alipay_supply_defense_document_response.py +24 -0
- com/alipay/ams/api/response/marketplace/__init__.py +0 -0
- com/alipay/ams/api/response/marketplace/alipay_create_payout_response.py +43 -0
- com/alipay/ams/api/response/marketplace/alipay_create_transfer_response.py +43 -0
- com/alipay/ams/api/response/marketplace/alipay_inquire_balance_response.py +26 -0
- com/alipay/ams/api/response/marketplace/alipay_register_response.py +18 -0
- com/alipay/ams/api/response/marketplace/alipay_settle_response.py +25 -0
- com/alipay/ams/api/response/marketplace/alipay_settlement_info_update_response.py +17 -0
- com/alipay/ams/api/response/marketplace/alipay_submit_attachment_response.py +26 -0
- com/alipay/ams/api/response/merchant/__init__.py +0 -0
- com/alipay/ams/api/response/merchant/alipay_merchant_registration_info_query_response.py +25 -0
- com/alipay/ams/api/response/merchant/alipay_merchant_registration_response.py +20 -0
- com/alipay/ams/api/response/merchant/alipay_merchant_registration_status_query_response.py +25 -0
- com/alipay/ams/api/response/pay/__init__.py +0 -0
- com/alipay/ams/api/response/pay/alipay_capture_response.py +59 -0
- com/alipay/ams/api/response/pay/alipay_create_order_response.py +55 -0
- com/alipay/ams/api/response/pay/alipay_create_session_response.py +32 -0
- com/alipay/ams/api/response/pay/alipay_pay_cancel_response.py +34 -0
- com/alipay/ams/api/response/pay/alipay_pay_consult_response.py +41 -0
- com/alipay/ams/api/response/pay/alipay_pay_query_response.py +245 -0
- com/alipay/ams/api/response/pay/alipay_pay_response.py +218 -0
- com/alipay/ams/api/response/pay/alipay_refund_query_response.py +68 -0
- com/alipay/ams/api/response/pay/alipay_refund_response.py +111 -0
- com/alipay/ams/api/response/risks/__init__.py +0 -0
- com/alipay/ams/api/response/risks/inquiry_risk_score_response.py +42 -0
- com/alipay/ams/api/response/risks/risk_decide_response.py +34 -0
- com/alipay/ams/api/response/risks/risk_report_response.py +11 -0
- com/alipay/ams/api/response/risks/send_payment_result_response.py +11 -0
- com/alipay/ams/api/response/risks/send_refund_result_response.py +11 -0
- com/alipay/ams/api/response/subscription/__init__.py +0 -0
- com/alipay/ams/api/response/subscription/alipay_subscription_cancel_response.py +12 -0
- com/alipay/ams/api/response/subscription/alipay_subscription_change_response.py +11 -0
- com/alipay/ams/api/response/subscription/alipay_subscription_create_response.py +40 -0
- com/alipay/ams/api/response/subscription/alipay_subscription_update_response.py +11 -0
- com/alipay/ams/api/response/users/__init__.py +0 -0
- com/alipay/ams/api/response/users/alipay_init_authentication_response.py +21 -0
- com/alipay/ams/api/response/users/alipay_user_query_info_response.py +37 -0
- com/alipay/ams/api/response/users/alipay_verify_authentication_response.py +21 -0
- com/alipay/ams/api/response/vaulting/__init__.py +0 -0
- com/alipay/ams/api/response/vaulting/alipay_vaulting_payment_method_response.py +50 -0
- com/alipay/ams/api/response/vaulting/alipay_vaulting_query_response.py +53 -0
- com/alipay/ams/api/response/vaulting/alipay_vaulting_session_response.py +31 -0
- com/alipay/ams/api/tools/__init__.py +0 -0
- com/alipay/ams/api/tools/constants.py +17 -0
- com/alipay/ams/api/tools/date_tools.py +30 -0
- com/alipay/ams/api/tools/signature_tool.py +96 -0
- com/alipay/ams/api/tools/webhook_tool.py +10 -0
- global_open_sdk_python-1.4.1.dist-info/LICENSE +21 -0
- global_open_sdk_python-1.4.1.dist-info/METADATA +32 -0
- global_open_sdk_python-1.4.1.dist-info/RECORD +297 -0
- global_open_sdk_python-1.4.1.dist-info/WHEEL +5 -0
- global_open_sdk_python-1.4.1.dist-info/top_level.txt +1 -0
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
from com.alipay.ams.api.response.alipay_response import AlipayResponse
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
class RiskDecideResponse(AlipayResponse):
|
|
5
|
+
def __init__(self, rsp_body):
|
|
6
|
+
super(RiskDecideResponse, self).__init__()
|
|
7
|
+
self.__decision = None
|
|
8
|
+
self.__authentication_decision = None
|
|
9
|
+
self.__parse_rsp_body(rsp_body)
|
|
10
|
+
|
|
11
|
+
@property
|
|
12
|
+
def decision(self):
|
|
13
|
+
return self.__decision
|
|
14
|
+
|
|
15
|
+
@decision.setter
|
|
16
|
+
def decision(self, decision):
|
|
17
|
+
self.__decision = decision
|
|
18
|
+
|
|
19
|
+
@property
|
|
20
|
+
def authentication_decision(self):
|
|
21
|
+
return self.__authentication_decision
|
|
22
|
+
|
|
23
|
+
|
|
24
|
+
@authentication_decision.setter
|
|
25
|
+
def authentication_decision(self, authentication_decision):
|
|
26
|
+
self.__authentication_decision = authentication_decision
|
|
27
|
+
|
|
28
|
+
|
|
29
|
+
def __parse_rsp_body(self, rsp_body):
|
|
30
|
+
response = super(RiskDecideResponse, self).parse_rsp_body(rsp_body)
|
|
31
|
+
if "decision" in response:
|
|
32
|
+
self.decision = response["decision"]
|
|
33
|
+
if "authentication_decision" in response:
|
|
34
|
+
self.authentication_decision = response["authenticationDecision"]
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
from com.alipay.ams.api.response.alipay_response import AlipayResponse
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
class RiskReportResponse(AlipayResponse):
|
|
5
|
+
def __init__(self, rsp_body):
|
|
6
|
+
super(RiskReportResponse, self).__init__()
|
|
7
|
+
self.__parse_rsp_body(rsp_body)
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
def __parse_rsp_body(self, rsp_body):
|
|
11
|
+
response = super(RiskReportResponse, self).parse_rsp_body(rsp_body)
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
from com.alipay.ams.api.response.alipay_response import AlipayResponse
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
class SendPaymentResultResponse(AlipayResponse):
|
|
5
|
+
|
|
6
|
+
def __init__(self, rsp_body):
|
|
7
|
+
super(SendPaymentResultResponse, self).__init__()
|
|
8
|
+
self.__parse_rsp_body(rsp_body)
|
|
9
|
+
|
|
10
|
+
def __parse_rsp_body(self, rsp_body):
|
|
11
|
+
response = super(SendPaymentResultResponse, self).parse_rsp_body(rsp_body)
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
from com.alipay.ams.api.response.alipay_response import AlipayResponse
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
class SendRefundResultResponse(AlipayResponse):
|
|
5
|
+
def __init__(self, rsp_body):
|
|
6
|
+
super(SendRefundResultResponse, self).__init__()
|
|
7
|
+
self.__parse_rsp_body(rsp_body)
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
def __parse_rsp_body(self, rsp_body):
|
|
11
|
+
response = super(SendRefundResultResponse, self).parse_rsp_body(rsp_body)
|
|
File without changes
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
from com.alipay.ams.api.response.alipay_response import AlipayResponse
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
class AlipaySubscriptionCancelResponse(AlipayResponse):
|
|
5
|
+
|
|
6
|
+
def __init__(self, rsp_body):
|
|
7
|
+
super(AlipaySubscriptionCancelResponse, self).__init__()
|
|
8
|
+
|
|
9
|
+
self.__parse_rsp_body(rsp_body)
|
|
10
|
+
|
|
11
|
+
def __parse_rsp_body(self, rsp_body):
|
|
12
|
+
rsp_dict = super(AlipaySubscriptionCancelResponse, self).parse_rsp_body(rsp_body)
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
from com.alipay.ams.api.response.alipay_response import AlipayResponse
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
class AlipaySubscriptionChangeResponse(AlipayResponse):
|
|
5
|
+
def __init__(self, rsp_body):
|
|
6
|
+
super(AlipaySubscriptionChangeResponse, self).__init__()
|
|
7
|
+
|
|
8
|
+
self.__parse_rsp_body(rsp_body)
|
|
9
|
+
|
|
10
|
+
def __parse_rsp_body(self, rsp_body):
|
|
11
|
+
rsp_dict = super(AlipaySubscriptionChangeResponse, self).parse_rsp_body(rsp_body)
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
from com.alipay.ams.api.response.alipay_response import AlipayResponse
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
class AlipaySubscriptionCreateResponse(AlipayResponse):
|
|
5
|
+
def __init__(self, rsp_body):
|
|
6
|
+
super(AlipaySubscriptionCreateResponse, self).__init__()
|
|
7
|
+
self.__scheme_url = None
|
|
8
|
+
self.__applink_url = None
|
|
9
|
+
self.__normal_url = None
|
|
10
|
+
self.__app_identifier = None
|
|
11
|
+
self.__parse_rsp_body(rsp_body)
|
|
12
|
+
|
|
13
|
+
@property
|
|
14
|
+
def scheme_url(self):
|
|
15
|
+
return self.__scheme_url
|
|
16
|
+
|
|
17
|
+
@property
|
|
18
|
+
def applink_url(self):
|
|
19
|
+
return self.__applink_url
|
|
20
|
+
|
|
21
|
+
@property
|
|
22
|
+
def normal_url(self):
|
|
23
|
+
return self.__normal_url
|
|
24
|
+
|
|
25
|
+
@property
|
|
26
|
+
def app_identifier(self):
|
|
27
|
+
return self.__app_identifier
|
|
28
|
+
|
|
29
|
+
def __parse_rsp_body(self, rsp_body):
|
|
30
|
+
rsp_dict = super(AlipaySubscriptionCreateResponse, self).parse_rsp_body(rsp_body)
|
|
31
|
+
if rsp_dict.get('schemeUrl'):
|
|
32
|
+
self.__scheme_url = rsp_dict.get('schemeUrl')
|
|
33
|
+
if rsp_dict.get('applinkUrl'):
|
|
34
|
+
self.__applink_url = rsp_dict.get('applinkUrl')
|
|
35
|
+
if rsp_dict.get('normalUrl'):
|
|
36
|
+
self.__normal_url = rsp_dict.get('normalUrl')
|
|
37
|
+
if rsp_dict.get('appIdentifier'):
|
|
38
|
+
self.__app_identifier = rsp_dict.get('appIdentifier')
|
|
39
|
+
|
|
40
|
+
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
from com.alipay.ams.api.response.alipay_response import AlipayResponse
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
class AlipaySubscriptionUpdateResponse(AlipayResponse):
|
|
5
|
+
def __init__(self, rsp_body):
|
|
6
|
+
super(AlipaySubscriptionUpdateResponse, self).__init__()
|
|
7
|
+
self.__parse_rsp_body(rsp_body)
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
def __parse_rsp_body(self, rsp_body):
|
|
11
|
+
rsp_dict = super(AlipaySubscriptionUpdateResponse, self).parse_rsp_body(rsp_body)
|
|
File without changes
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
#!/usr/bin/env python
|
|
2
|
+
# -*- coding: utf-8 -*-
|
|
3
|
+
|
|
4
|
+
from com.alipay.ams.api.response.alipay_response import AlipayResponse
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
class AlipayInitAuthenticationResponse(AlipayResponse):
|
|
8
|
+
|
|
9
|
+
def __init__(self, rsp_body):
|
|
10
|
+
super(AlipayInitAuthenticationResponse, self).__init__()
|
|
11
|
+
self.__authentication_request_id = None
|
|
12
|
+
self.__parse_rsp_body(rsp_body)
|
|
13
|
+
|
|
14
|
+
@property
|
|
15
|
+
def authentication_request_id(self):
|
|
16
|
+
return self.__authentication_request_id
|
|
17
|
+
|
|
18
|
+
def __parse_rsp_body(self, rsp_body):
|
|
19
|
+
response = super(AlipayInitAuthenticationResponse, self).parse_rsp_body(rsp_body)
|
|
20
|
+
if 'authenticationRequestId' in response:
|
|
21
|
+
self.__authentication_request_id = response['authenticationRequestId']
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
#!/usr/bin/env python
|
|
2
|
+
# -*- coding: utf-8 -*-
|
|
3
|
+
|
|
4
|
+
from com.alipay.ams.api.response.alipay_response import AlipayResponse
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
class AlipayUserQueryInfoResponse(AlipayResponse):
|
|
8
|
+
|
|
9
|
+
def __init__(self, rsp_body):
|
|
10
|
+
super(AlipayUserQueryInfoResponse, self).__init__()
|
|
11
|
+
self.__user_id = None
|
|
12
|
+
self.__user_login_id = None
|
|
13
|
+
self.__hash_user_login_id = None
|
|
14
|
+
self.__parse_rsp_body(rsp_body)
|
|
15
|
+
|
|
16
|
+
@property
|
|
17
|
+
def user_id(self):
|
|
18
|
+
return self.__user_id
|
|
19
|
+
|
|
20
|
+
@property
|
|
21
|
+
def user_login_id(self):
|
|
22
|
+
return self.__user_login_id
|
|
23
|
+
|
|
24
|
+
@property
|
|
25
|
+
def hash_user_login_id(self):
|
|
26
|
+
return self.__hash_user_login_id
|
|
27
|
+
|
|
28
|
+
def __parse_rsp_body(self, rsp_body):
|
|
29
|
+
response = super(AlipayUserQueryInfoResponse, self).parse_rsp_body(rsp_body)
|
|
30
|
+
if 'userId' in response:
|
|
31
|
+
self.__user_id = response['userId']
|
|
32
|
+
|
|
33
|
+
if 'userLoginId' in response:
|
|
34
|
+
self.__user_login_id = response['userLoginId']
|
|
35
|
+
|
|
36
|
+
if 'hashUserLoginId' in response:
|
|
37
|
+
self.__hash_user_login_id = response['hashUserLoginId']
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
#!/usr/bin/env python
|
|
2
|
+
# -*- coding: utf-8 -*-
|
|
3
|
+
|
|
4
|
+
from com.alipay.ams.api.response.alipay_response import AlipayResponse
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
class AlipayVerifyAuthenticationResponse(AlipayResponse):
|
|
8
|
+
|
|
9
|
+
def __init__(self, rsp_body):
|
|
10
|
+
super(AlipayVerifyAuthenticationResponse, self).__init__()
|
|
11
|
+
self.__is_passed = None
|
|
12
|
+
self.__parse_rsp_body(rsp_body)
|
|
13
|
+
|
|
14
|
+
@property
|
|
15
|
+
def is_passed(self):
|
|
16
|
+
return self.__is_passed
|
|
17
|
+
|
|
18
|
+
def __parse_rsp_body(self, rsp_body):
|
|
19
|
+
response = super(AlipayVerifyAuthenticationResponse, self).parse_rsp_body(rsp_body)
|
|
20
|
+
if 'isPassed' in response:
|
|
21
|
+
self.__is_passed = response['isPassed']
|
|
File without changes
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import json
|
|
2
|
+
|
|
3
|
+
from com.alipay.ams.api.model.payment_method_detail import PaymentMethodDetail
|
|
4
|
+
from com.alipay.ams.api.response.alipay_response import AlipayResponse
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
class AlipayVaultingPaymentMethodResponse(AlipayResponse):
|
|
8
|
+
|
|
9
|
+
def __init__(self, rsp_body):
|
|
10
|
+
super(AlipayVaultingPaymentMethodResponse, self).__init__()
|
|
11
|
+
self.__vaulting_request_id = None
|
|
12
|
+
self.__payment_method_detail = None #type: PaymentMethodDetail
|
|
13
|
+
self.__normal_url = None
|
|
14
|
+
self.__scheme_url = None
|
|
15
|
+
self.__applink_url = None
|
|
16
|
+
self.__parse_rsp_body(rsp_body)
|
|
17
|
+
|
|
18
|
+
@property
|
|
19
|
+
def vaulting_request_id(self):
|
|
20
|
+
return self.__vaulting_request_id
|
|
21
|
+
|
|
22
|
+
@property
|
|
23
|
+
def payment_method_detail(self):
|
|
24
|
+
return self.__payment_method_detail
|
|
25
|
+
|
|
26
|
+
@property
|
|
27
|
+
def normal_url(self):
|
|
28
|
+
return self.__normal_url
|
|
29
|
+
|
|
30
|
+
@property
|
|
31
|
+
def scheme_url(self):
|
|
32
|
+
return self.__scheme_url
|
|
33
|
+
|
|
34
|
+
@property
|
|
35
|
+
def applink_url(self):
|
|
36
|
+
return self.__applink_url
|
|
37
|
+
|
|
38
|
+
|
|
39
|
+
def __parse_rsp_body(self, rsp_body):
|
|
40
|
+
rsp_dict = super(AlipayVaultingPaymentMethodResponse, self).parse_rsp_body(rsp_body)
|
|
41
|
+
if 'vaultingRequestId' in rsp_dict:
|
|
42
|
+
self.__vaulting_request_id = rsp_dict['vaultingRequestId']
|
|
43
|
+
if 'paymentMethodDetail' in rsp_dict:
|
|
44
|
+
self.__payment_method_detail = PaymentMethodDetail.parse_rsp_body(rsp_dict['paymentMethodDetail'])
|
|
45
|
+
if 'normalUrl' in rsp_dict:
|
|
46
|
+
self.__normal_url = rsp_dict['normalUrl']
|
|
47
|
+
if 'schemeUrl' in rsp_dict:
|
|
48
|
+
self.__scheme_url = rsp_dict['schemeUrl']
|
|
49
|
+
if 'applinkUrl' in rsp_dict:
|
|
50
|
+
self.__applink_url = rsp_dict['applinkUrl']
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
from com.alipay.ams.api.model.payment_method_detail import PaymentMethodDetail
|
|
2
|
+
from com.alipay.ams.api.response.alipay_response import AlipayResponse
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
class AlipayVaultingQueryResponse(AlipayResponse):
|
|
6
|
+
def __init__(self, rsp_body):
|
|
7
|
+
super(AlipayVaultingQueryResponse, self).__init__()
|
|
8
|
+
self.__vaulting_request_id = None
|
|
9
|
+
self.__normal_url = None
|
|
10
|
+
self.__scheme_url = None
|
|
11
|
+
self.__applink_url = None
|
|
12
|
+
self.__vaulting_status = None
|
|
13
|
+
self.__payment_method_detail = None #type: PaymentMethodDetail
|
|
14
|
+
self.__parse_rsp_body(rsp_body)
|
|
15
|
+
|
|
16
|
+
@property
|
|
17
|
+
def vaulting_request_id(self):
|
|
18
|
+
return self.__vaulting_request_id
|
|
19
|
+
|
|
20
|
+
@property
|
|
21
|
+
def normal_url(self):
|
|
22
|
+
return self.__normal_url
|
|
23
|
+
|
|
24
|
+
@property
|
|
25
|
+
def scheme_url(self):
|
|
26
|
+
return self.__scheme_url
|
|
27
|
+
|
|
28
|
+
@property
|
|
29
|
+
def applink_url(self):
|
|
30
|
+
return self.__applink_url
|
|
31
|
+
|
|
32
|
+
@property
|
|
33
|
+
def vaulting_status(self):
|
|
34
|
+
return self.__vaulting_status
|
|
35
|
+
|
|
36
|
+
@property
|
|
37
|
+
def payment_method_detail(self):
|
|
38
|
+
return self.__payment_method_detail
|
|
39
|
+
|
|
40
|
+
def __parse_rsp_body(self, rsp_body):
|
|
41
|
+
rsp_dict = super(AlipayVaultingQueryResponse, self).parse_rsp_body(rsp_body)
|
|
42
|
+
if 'vaultingRequestId' in rsp_dict:
|
|
43
|
+
self.__vaulting_request_id = rsp_dict['vaultingRequestId']
|
|
44
|
+
if 'normalUrl' in rsp_dict:
|
|
45
|
+
self.__normal_url = rsp_dict['normalUrl']
|
|
46
|
+
if 'schemeUrl' in rsp_dict:
|
|
47
|
+
self.__scheme_url = rsp_dict['schemeUrl']
|
|
48
|
+
if 'applinkUrl' in rsp_dict:
|
|
49
|
+
self.__applink_url = rsp_dict['applinkUrl']
|
|
50
|
+
if 'vaultingStatus' in rsp_dict:
|
|
51
|
+
self.__vaulting_status = rsp_dict['vaultingStatus']
|
|
52
|
+
if 'paymentMethodDetail' in rsp_dict:
|
|
53
|
+
self.__payment_method_detail = PaymentMethodDetail.parse_rsp_body(rsp_dict['paymentMethodDetail'])
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
from com.alipay.ams.api.response.alipay_response import AlipayResponse
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
class AlipayVaultingSessionResponse(AlipayResponse):
|
|
5
|
+
def __init__(self, rsp_body):
|
|
6
|
+
super(AlipayVaultingSessionResponse, self).__init__()
|
|
7
|
+
self.__vaulting_session_data = None
|
|
8
|
+
self.__vaulting_session_id = None
|
|
9
|
+
self.__vaulting_session_expiry_time = None
|
|
10
|
+
self.__parse_rsp_body(rsp_body)
|
|
11
|
+
|
|
12
|
+
@property
|
|
13
|
+
def vaulting_session_data(self):
|
|
14
|
+
return self.__vaulting_session_data
|
|
15
|
+
|
|
16
|
+
@property
|
|
17
|
+
def vaulting_session_id(self):
|
|
18
|
+
return self.__vaulting_session_id
|
|
19
|
+
@property
|
|
20
|
+
def vaulting_session_expiry_time(self):
|
|
21
|
+
return self.__vaulting_session_expiry_time
|
|
22
|
+
|
|
23
|
+
def __parse_rsp_body(self, rsp_body):
|
|
24
|
+
rsp_dict = super(AlipayVaultingSessionResponse, self).parse_rsp_body(rsp_body)
|
|
25
|
+
if 'vaultingSessionData' in rsp_dict:
|
|
26
|
+
self.__vaulting_session_data = rsp_dict['vaultingSessionData']
|
|
27
|
+
if 'vaultingSessionId' in rsp_dict:
|
|
28
|
+
self.__vaulting_session_id = rsp_dict['vaultingSessionId']
|
|
29
|
+
if 'vaultingSessionExpiryTime' in rsp_dict:
|
|
30
|
+
self.__vaulting_session_expiry_time = rsp_dict['vaultingSessionExpiryTime']
|
|
31
|
+
|
|
File without changes
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
#!/usr/bin/env python
|
|
2
|
+
# -*- coding: utf-8 -*-
|
|
3
|
+
import sys
|
|
4
|
+
|
|
5
|
+
IS_PYTHON_VERSION_3 = True
|
|
6
|
+
if sys.version_info < (3, 0):
|
|
7
|
+
IS_PYTHON_VERSION_3 = False
|
|
8
|
+
|
|
9
|
+
IS_PYTHON_VERSION_cryptography = True
|
|
10
|
+
if sys.version_info < (2.7, 0):
|
|
11
|
+
IS_PYTHON_VERSION_3 = False
|
|
12
|
+
|
|
13
|
+
DEFAULT_KEY_VERSION = "1"
|
|
14
|
+
|
|
15
|
+
DEFAULT_CHARSET = "UTF-8"
|
|
16
|
+
|
|
17
|
+
DEFAULT_TIMEOUT = 15
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
#!/usr/bin/env python
|
|
2
|
+
# -*- coding: utf-8 -*-
|
|
3
|
+
|
|
4
|
+
import time
|
|
5
|
+
|
|
6
|
+
'''
|
|
7
|
+
python3.2前版本中需要,时区支持
|
|
8
|
+
'''
|
|
9
|
+
try:
|
|
10
|
+
import pytz
|
|
11
|
+
except ImportError:
|
|
12
|
+
pass
|
|
13
|
+
|
|
14
|
+
from com.alipay.ams.api.tools.constants import *
|
|
15
|
+
from datetime import datetime
|
|
16
|
+
|
|
17
|
+
'''
|
|
18
|
+
python version > 3.2有timezone模块
|
|
19
|
+
'''
|
|
20
|
+
try:
|
|
21
|
+
from datetime import timezone
|
|
22
|
+
except ImportError:
|
|
23
|
+
pass
|
|
24
|
+
|
|
25
|
+
|
|
26
|
+
def get_cur_iso8601_time():
|
|
27
|
+
if not IS_PYTHON_VERSION_3:
|
|
28
|
+
return datetime.fromtimestamp(int(time.time()), tz=pytz.timezone('UTC')).isoformat()
|
|
29
|
+
else:
|
|
30
|
+
return datetime.fromtimestamp(int(time.time()), tz=timezone.utc).isoformat()
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
#!/usr/bin/env python
|
|
2
|
+
# -*- coding: utf-8 -*-
|
|
3
|
+
import base64
|
|
4
|
+
|
|
5
|
+
import rsa
|
|
6
|
+
from cryptography.hazmat.primitives import serialization, hashes
|
|
7
|
+
from cryptography.hazmat.primitives.asymmetric import padding
|
|
8
|
+
|
|
9
|
+
'''
|
|
10
|
+
python2中是urllib,python3中是urllib.parse
|
|
11
|
+
'''
|
|
12
|
+
try:
|
|
13
|
+
from urllib.parse import quote_plus, unquote_plus
|
|
14
|
+
except ImportError:
|
|
15
|
+
from urllib import quote_plus, unquote_plus
|
|
16
|
+
from com.alipay.ams.api.tools.constants import *
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
def __add_start_end(key, startMarker, endMarker):
|
|
20
|
+
if key.find(startMarker) < 0:
|
|
21
|
+
key = startMarker + key
|
|
22
|
+
if key.find(endMarker) < 0:
|
|
23
|
+
key = key + endMarker
|
|
24
|
+
return key
|
|
25
|
+
|
|
26
|
+
|
|
27
|
+
def __fill_private_key_marker(private_key):
|
|
28
|
+
return __add_start_end(private_key, "-----BEGIN RSA PRIVATE KEY-----\n", "\n-----END RSA PRIVATE KEY-----")
|
|
29
|
+
|
|
30
|
+
|
|
31
|
+
def __fill_public_key_marker(public_key):
|
|
32
|
+
return __add_start_end(public_key, "-----BEGIN PUBLIC KEY-----\n", "\n-----END PUBLIC KEY-----")
|
|
33
|
+
|
|
34
|
+
|
|
35
|
+
def __sign_with_sha256rsa(private_key, sign_content, charset=DEFAULT_CHARSET):
|
|
36
|
+
sign_content = sign_content.encode(charset)
|
|
37
|
+
private_key = __fill_private_key_marker(private_key)
|
|
38
|
+
'''
|
|
39
|
+
python2.7 以上 支持cryptography
|
|
40
|
+
'''
|
|
41
|
+
if IS_PYTHON_VERSION_cryptography:
|
|
42
|
+
private_key_pem = serialization.load_pem_private_key(
|
|
43
|
+
private_key.encode('utf-8'),
|
|
44
|
+
password=None,
|
|
45
|
+
)
|
|
46
|
+
|
|
47
|
+
signature = private_key_pem.sign(
|
|
48
|
+
sign_content,
|
|
49
|
+
padding.PKCS1v15(),
|
|
50
|
+
hashes.SHA256()
|
|
51
|
+
)
|
|
52
|
+
else:
|
|
53
|
+
signature = rsa.sign(sign_content, rsa.PrivateKey.load_pkcs1(private_key, format='PEM'), 'SHA-256')
|
|
54
|
+
sign_value = base64.b64encode(signature)
|
|
55
|
+
'''
|
|
56
|
+
python3 sign_value是二进制,需要转成str
|
|
57
|
+
'''
|
|
58
|
+
if IS_PYTHON_VERSION_3:
|
|
59
|
+
sign_value = str(sign_value, encoding=charset)
|
|
60
|
+
|
|
61
|
+
'''
|
|
62
|
+
do url encode
|
|
63
|
+
'''
|
|
64
|
+
if IS_PYTHON_VERSION_3:
|
|
65
|
+
sign_value = quote_plus(sign_value, encoding=charset)
|
|
66
|
+
else:
|
|
67
|
+
sign_value = quote_plus(sign_value)
|
|
68
|
+
|
|
69
|
+
return sign_value
|
|
70
|
+
|
|
71
|
+
|
|
72
|
+
def __verify_with_sha256rsa(public_key, message, sign_value):
|
|
73
|
+
message = message.encode(DEFAULT_CHARSET)
|
|
74
|
+
public_key = __fill_public_key_marker(public_key)
|
|
75
|
+
sign_value = base64.b64decode(sign_value)
|
|
76
|
+
return bool(rsa.verify(message, sign_value, rsa.PublicKey.load_pkcs1_openssl_pem(public_key)))
|
|
77
|
+
|
|
78
|
+
|
|
79
|
+
def gen_sign_content(http_method, path, client_id, time_string, content):
|
|
80
|
+
payload = http_method + " " + path + "\n" + client_id + "." + time_string + "." + content
|
|
81
|
+
return payload
|
|
82
|
+
|
|
83
|
+
|
|
84
|
+
def sign(http_method, path, client_id, req_time_str, req_body, merchant_private_key):
|
|
85
|
+
req_content = gen_sign_content(http_method, path, client_id, req_time_str, req_body)
|
|
86
|
+
private_key = __fill_private_key_marker(merchant_private_key)
|
|
87
|
+
sign_value = __sign_with_sha256rsa(private_key, req_content)
|
|
88
|
+
return sign_value
|
|
89
|
+
|
|
90
|
+
|
|
91
|
+
def verify(http_method, path, client_id, rsp_time_str, rsp_body, signature, alipay_public_key):
|
|
92
|
+
signature = unquote_plus(signature)
|
|
93
|
+
rsp_content = gen_sign_content(http_method, path, client_id, rsp_time_str, rsp_body)
|
|
94
|
+
public_key = __fill_public_key_marker(alipay_public_key)
|
|
95
|
+
is_verify = __verify_with_sha256rsa(public_key, rsp_content, signature)
|
|
96
|
+
return is_verify
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
from com.alipay.ams.api.exception.exception import AlipayApiException
|
|
2
|
+
|
|
3
|
+
from com.alipay.ams.api.tools.signature_tool import verify
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
def check_signature(http_method, path, client_id, req_time_str, req_body, signature, alipay_public_key):
|
|
7
|
+
if signature and 'signature=' in signature:
|
|
8
|
+
signature = signature.split('signature=')[1]
|
|
9
|
+
return verify(http_method, path, client_id, req_time_str, req_body, signature, alipay_public_key)
|
|
10
|
+
raise AlipayApiException('signature invalid:' + str(signature))
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2020 Alipay
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
Metadata-Version: 2.1
|
|
2
|
+
Name: global-open-sdk-python
|
|
3
|
+
Version: 1.4.1
|
|
4
|
+
Summary: The global alipay gateway SDK for Python.
|
|
5
|
+
Home-page: https://github.com/alipay/global-open-sdk-python
|
|
6
|
+
Author: guodong.wzj
|
|
7
|
+
Author-email: wangzunjiao.wzj@digital-engine.com
|
|
8
|
+
License: MIT
|
|
9
|
+
Keywords: global,alipay,sdk
|
|
10
|
+
Platform: any
|
|
11
|
+
Classifier: Intended Audience :: Developers
|
|
12
|
+
Classifier: License :: OSI Approved :: MIT License
|
|
13
|
+
Classifier: Programming Language :: Python
|
|
14
|
+
Classifier: Programming Language :: Python :: 2.7
|
|
15
|
+
Classifier: Programming Language :: Python :: 3.2
|
|
16
|
+
Classifier: Programming Language :: Python :: 3.3
|
|
17
|
+
Classifier: Programming Language :: Python :: 3.4
|
|
18
|
+
Classifier: Programming Language :: Python :: 3.5
|
|
19
|
+
Classifier: Programming Language :: Python :: 3.6
|
|
20
|
+
Classifier: Programming Language :: Python :: 3.7
|
|
21
|
+
Classifier: Programming Language :: Python :: 3.8
|
|
22
|
+
Classifier: Programming Language :: Python :: 3.9
|
|
23
|
+
Classifier: Programming Language :: Python :: 3.10
|
|
24
|
+
Classifier: Programming Language :: Python :: 3.11
|
|
25
|
+
Classifier: Programming Language :: Python :: 3.12
|
|
26
|
+
Classifier: Topic :: Software Development
|
|
27
|
+
License-File: LICENSE
|
|
28
|
+
Requires-Dist: enum34
|
|
29
|
+
Requires-Dist: pytz
|
|
30
|
+
Requires-Dist: pycryptodome
|
|
31
|
+
Requires-Dist: rsa
|
|
32
|
+
Requires-Dist: cryptography
|