视频一区二区三区自拍_千金肉奴隷1985未删减版在线观看_国产成人黄色视频在线播放_少女免费播放片高清在线观看_国产精品v欧美精品v

基本規(guī)則

更新時(shí)間:2023.04.28

# 基本信息

所有的API請(qǐng)求必須使用HTTPS。

請(qǐng)求時(shí)不應(yīng)忽略服務(wù)器證書驗(yàn)證的錯(cuò)誤,避免被惡意劫持。

# 數(shù)據(jù)格式

所有的API請(qǐng)求必須使用HTTPS。

微信支付API v3使用 JSON (opens new window) 作為消息體的數(shù)據(jù)交換格式。請(qǐng)求須設(shè)置HTTP頭部(圖片上傳API除外):

1Content-Type: application/json
2Accept: application/json

提示

API應(yīng)答中的數(shù)據(jù)有可能包含商戶傳入的數(shù)據(jù),即可能是未經(jīng)檢查的用戶輸入內(nèi)容。為了避免XSS(Cross-site scripting)攻擊,請(qǐng)調(diào)用方在使用應(yīng)答數(shù)據(jù)前根據(jù)場(chǎng)景做適當(dāng)?shù)霓D(zhuǎn)義或者過(guò)濾。

# 參數(shù)兼容性

  • 請(qǐng)求是否成功,與請(qǐng)求參數(shù)的順序無(wú)關(guān)
  • 請(qǐng)求是否成功,與請(qǐng)求JSON中的鍵值對(duì)出現(xiàn)的順序無(wú)關(guān)
  • 處理應(yīng)答時(shí),不應(yīng)假設(shè)應(yīng)答JSON中的鍵值對(duì)出現(xiàn)的順序
  • 新的API版本可能在請(qǐng)求或應(yīng)答中加入新的參數(shù)或者JSON的鍵值對(duì)
  • 新的API版本不會(huì)去除請(qǐng)求和應(yīng)答中已經(jīng)存在的必填參數(shù)或者JSON的鍵值對(duì)
  • 當(dāng)請(qǐng)求或應(yīng)答中的JSON鍵值對(duì)的值為空(null)時(shí),可以省略

# 字符集

微信支付API v3僅支持UTF-8字符編碼的一個(gè)子集:使用一至三個(gè)字節(jié)編碼的字符。也就是說(shuō),不支持Unicode輔助平面中的四至六字節(jié)編碼的字符。

# 日期格式

所有的日期對(duì)象,使用 ISO 8601 (opens new window) 所定義的格式。

示例:

1yyyy-MM-DDTHH:mm:ss.SSSZ
2yyyy-MM-DDTHH:mm:ssZ
3yyyy-MM-DDTHH:mm:ss.SSS+08:00
4yyyy-MM-DDTHH:mm:ss+08:00

# 請(qǐng)求的唯一標(biāo)識(shí)

微信支付給每個(gè)接收到的請(qǐng)求分配了一個(gè)唯一標(biāo)識(shí)。請(qǐng)求的唯一標(biāo)識(shí)包含在應(yīng)答的HTTP頭Request-ID中。當(dāng)需要微信支付幫助時(shí),請(qǐng)?zhí)峁┱?qǐng)求的唯一標(biāo)識(shí),以便我們更快的定位到具體的請(qǐng)求。

# 錯(cuò)誤信息

微信支付API v3使用HTTP狀態(tài)碼來(lái)表示請(qǐng)求處理的結(jié)果。

  • 處理成功的請(qǐng)求,如果有應(yīng)答的消息體將返回200,若沒(méi)有應(yīng)答的消息體將返回204;
  • 已經(jīng)被成功接受待處理的請(qǐng)求,將返回202;
  • 請(qǐng)求處理失敗時(shí),如缺少必要的入?yún)ⅰ⒅Ц稌r(shí)余額不足,將會(huì)返回4xx范圍內(nèi)的錯(cuò)誤碼;
  • 請(qǐng)求處理時(shí)發(fā)生了微信支付側(cè)的服務(wù)系統(tǒng)錯(cuò)誤,將返回500/501/503的狀態(tài)碼。這種情況比較少見(jiàn)。

# 錯(cuò)誤碼和錯(cuò)誤提示

當(dāng)請(qǐng)求處理失敗時(shí),除了HTTP狀態(tài)碼表示錯(cuò)誤之外,API將在消息體返回錯(cuò)誤相應(yīng)說(shuō)明具體的錯(cuò)誤原因。

  • code:詳細(xì)錯(cuò)誤碼;
  • message:錯(cuò)誤描述,使用易理解的文字表示錯(cuò)誤的原因;
  • field:指示錯(cuò)誤參數(shù)的位置。當(dāng)錯(cuò)誤參數(shù)位于請(qǐng)求body的JSON時(shí),填寫指向參數(shù)的JSON Pointer (opens new window) 。當(dāng)錯(cuò)誤參數(shù)位于請(qǐng)求的URL或者querystring時(shí),填寫參數(shù)的變量名;
  • value:錯(cuò)誤的值;
  • issue:具體錯(cuò)誤原因。
1{
2 "code": "PARAM_ERROR",
3 "message": "參數(shù)錯(cuò)誤",
4 "detail": {
5 "field": "/amount/currency",
6 "value": "XYZ",
7 "issue": "Currency code is invalid",
8 "location" :"body"
9 }
10}

# User Agent

HTTP協(xié)議要求發(fā)起請(qǐng)求的客戶端在每一次請(qǐng)求中都使用HTTP頭User-Agent來(lái)標(biāo)識(shí)自己。微信支付建議調(diào)用方選用以下兩種方式的一種:

  1. 使用HTTP客戶端默認(rèn)的User-Agent
  2. 遵循HTTP協(xié)議,使用自身系統(tǒng)和應(yīng)用的名稱和版本等信息,組成自己獨(dú)有的User-Agent

微信支付API v3很可能會(huì)拒絕處理無(wú)User-Agent的請(qǐng)求。

# 應(yīng)答的語(yǔ)種

微信支付API v3允許調(diào)用方聲明應(yīng)答中的錯(cuò)誤描述使用的自然語(yǔ)言語(yǔ)種。如果有需要,設(shè)置請(qǐng)求的HTTP頭Accept-Language。目前支持:

  • en
  • zh-CN
  • zh-HK
  • zh-TW

當(dāng)不設(shè)置或者值不支持時(shí),將使用簡(jiǎn)體中文(zh-CN)。