## 如何生成客户端调起支付时所需的参数及签名? --- > 请先自行阅读: > > [《微信支付开发者文档 - 基础支付:JSAPI 调起支付 API》](https://pay.weixin.qq.com/wiki/doc/apiv3/apis/chapter3_1_4.shtml) > > [《微信支付开发者文档 - 基础支付:APP 调起支付 API》](https://pay.weixin.qq.com/wiki/doc/apiv3/apis/chapter3_2_4.shtml) > > [《微信支付开发者文档 - 基础支付:小程序调起支付 API》](https://pay.weixin.qq.com/wiki/doc/apiv3/apis/chapter3_5_4.shtml) 你可根据官方文档的规则利用本库提供的 `RSAUtility` 工具类自行进行签名生成。 此外,本库还封装了直接生成参数及签名的扩展方法,下面给出一个示例代码: ```csharp /* 以生成 JSAPI 调起支付所需参数为例 */ var request = new Models.CreatePayTransactionJsapiRequest() { OutTradeNumber = "商户订单号", AppId = "公众号 AppId", Description = "描述", NotifyUrl = "回调地址", Amount = new Models.CreatePayTransactionJsapiRequest.Types.Amount() { Total = 0 }, Payer = new Models.CreatePayTransactionJsapiRequest.Types.Payer() { OpenId = "用户 OpenId" } }; var response = await client.ExecuteCreatePayTransactionJsapiAsync(request); var paramMap = client.GenerateParametersForJsapiPayRequest(request.AppId, response.PrepayId); ``` --- ### 【附】生成参数相关扩展方法速查表: - 生成客户端 JSAPI / 小程序调起支付所需的参数字典:`GenerateParametersForJsapiPayRequest` - 生成客户端 APP 调起支付所需的参数字典:`GenerateParametersForAppPayRequest`