日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

支付宝会员卡开卡表单模板配置(alipay.marketing.card.formtemplate.set)JAVA版本demo

發布時間:2023/12/10 编程问答 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 支付宝会员卡开卡表单模板配置(alipay.marketing.card.formtemplate.set)JAVA版本demo 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
官方接口文檔: https://docs.open.alipay.com/251/105668/ ,我這里寫的是開卡組件前兩步的操作流程, 僅供參考 ?

1. 調用接口前的準備工作(創建應用等)參考該文檔 https://docs.open.alipay.com/251/105731/ ?

2.核心代碼,這里要說明一下,目前測試發現這個接口的model原型有問題,推薦使用拼接字符串或者使用我下面的這個代碼來編寫項目,后面這個會將其優化model?

//會員卡開卡表單模板配置(alipay.marketing.card.formtemplate.set)public static void CardForm_templateSet(){AlipayClient alipayClient=alipayclient();AlipayMarketingCardFormtemplateSetRequest request = new AlipayMarketingCardFormtemplateSetRequest();String templateId = "20180131000000000782698000300330";JSONObject bizParams = new JSONObject();bizParams.put("template_id", templateId);ArrayList<String> requiredFields = new ArrayList<String>();requiredFields.add("OPEN_FORM_FIELD_NAME");requiredFields.add("OPEN_FORM_FIELD_MOBILE");requiredFields.add("OPEN_FORM_FIELD_IDCARD");requiredFields.add("OPEN_FORM_FIELD_GENDER");ArrayList<String> optionalFields = new ArrayList<String>();optionalFields.add("OPEN_FORM_FIELD_EMAIL");optionalFields.add("OPEN_FORM_FIELD_BIRTHDAY");JSONObject fields = new JSONObject();JSONObject requiredField = new JSONObject();requiredField.put("common_fields", requiredFields);JSONObject optionalField = new JSONObject();optionalField.put("common_fields", optionalFields);fields.put("required", requiredField);fields.put("optional", optionalField);bizParams.put("fields", fields);request.setBizContent(bizParams.toString());AlipayMarketingCardFormtemplateSetResponse response = null;try {response = alipayClient.execute(request);System.out.println(response.getBody());} catch (AlipayApiException e) {// TODO Auto-generated catch blocke.printStackTrace();}if(response.isSuccess()){System.out.println("調用成功");} else {System.out.println("調用失敗");}}

接口返回信息:?

{"alipay_marketing_card_formtemplate_set_response":{"code":"10000","msg":"Success"},"sign":"PK9mGX8uy3xfwRKygPxPCuf62YQU5JrdY4yDSn5dRhRcjtcTlzm8Gzv1yhnNXOhyITDzY6O8+rwPpSUqrQXT3VvS6dkMvEnoXsT5uKefRKX9PuvwbttN5Vc7Me57aPX9dReiBji4HgBVMI22gcugZ8mBTuNIecYNAAxiVcZjUFQ="}

注意點:?
1.template_id為會員卡模板ID,【創建會員卡模板】將會返回該id?

然后開始操作第二步的流程,調用獲取會員卡領卡投放鏈接(alipay.marketing.card.activateurl.apply),其核心代碼?
注意點:?
1.template_id為會員卡模板ID,創建會員卡模板將會返回該id?
2.callback為會員卡領卡表單頁面成功回調地址,此地址需要與應用配置的授權回調地址相同。(否則報錯ERR010)
?
3.out_string參數由商戶自定義設置,確認領卡成功后將作為url參數拼接在callback回調地址之后原樣帶回?

4.follow_app_id,需要關注的生活號AppId。若需要在領卡頁面展示“關注生活號”提示,可設置此參數為待關注的生活AppId?

//alipay.marketing.card.activateurl.apply(獲取會員卡領卡投放鏈接)public static void CardActivateurl_Apply(){AlipayClient alipayClient=alipayclient();AlipayMarketingCardActivateurlApplyRequest request = new AlipayMarketingCardActivateurlApplyRequest();request.setBizContent("{" +"\"template_id\":\"20180131000000000782698000300330\"," +"\"out_string\":\"test_callback\"," +"\"callback\":\"https://www.baidu.com\"," +"\"follow_app_id\":\"2014100900013222\"" +" }");AlipayMarketingCardActivateurlApplyResponse response = null;try {response = alipayClient.execute(request);System.out.println(response.getBody());} catch (AlipayApiException e) {// TODO Auto-generated catch blocke.printStackTrace();}if(response.isSuccess()){System.out.println("調用成功");} else {System.out.println("調用失敗");}}}

接口返回信息:?

{"alipay_marketing_card_activateurl_apply_response":{"code":"10000","msg":"Success","apply_card_url":"https%3A%2F%2Fmemberprod.alipay.com%2Faccount%2Fopenform%2Factivecard.htm%3Fapp_id%3D2014100900013222%26template_id%3D20180131000000000782698000300330%26__webview_options__%3DcanPullDown%253dNO%2526transparentTitle%253dauto%26out_string%3Dtest_callback%26follow_id%3D2014100900013222%26callback%3Dhttps%3A%2F%2Fwww.baidu.com"},"sign":"mcie0QYbGM8cs/9KXUtFHEqoG5j1+N9N2pAqMKigR2iWmtKHKAlc5HjutFqGEhJ/MN6gGOlqRv8xDYD9FDGqlDhtz80gKwU0AKfIaOMTURANmcL7YrGuymfatLTsoF14jkJf6NqPuoNleJZDY9kXQmHx7MBWlJY8EUPS+RRqnOk="}

將apply_card_url的值使用urldecode解碼得到的值,使用二維碼生成器生成,然后使用支付寶掃碼可以預覽到領卡界面,如果字段申請都得到通過的話,這些必填字段都會獲取到的,如要修改信息,點擊修改按鈕即可?

點擊確認領取,會跳轉callback地址,然后會得到類似這樣的信息?

https://www.baidu.com/?app_id=2014100900013222&auth_code=bec331907d9945a88b4c0be07ecbXXXE&state=bWNhcmQ%3D&scope=auth_base%2Cauth_user%2Cauth_ecard&template_id=20180131000000000782698000300330&request_id=20180131018043460230270561446&out_string=test_callback 然后通過code去換取accessToken去開卡的,如何換取【獲取會員信息】 ?
調用這個接口會員卡開卡(alipay.marketing.card.open) https://openclub.alipay.com/read.php?tid=1628&fid=71 ?


總結

以上是生活随笔為你收集整理的支付宝会员卡开卡表单模板配置(alipay.marketing.card.formtemplate.set)JAVA版本demo的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。