import org.apache.http.HttpResponse;
import org.apache.http.util.EntityUtils;
import java.util.HashMap;
import java.util.Map;

public class Example {
public static void main(String[] args) throws Exception{
String host = "https://open.expauth.com";
String path = "/v2/sms/single/msg/sender";
String method = "POST";
// "{{AppCode}}" 替換成您的 AppCode
String appcode = "{{AppCode}}";
Map headers = new HashMap();
headers.put("X-Mce-Signature", "AppCode/" + appcode);
headers.put("Content-Type", "application/x-www-form-urlencoded; charset=UTF-8");
Map querys = new HashMap();
Map bodys = new HashMap();
// 填充參數(shù)
bodys.put("templateId", "templateId");
bodys.put("signId", "signId");
bodys.put("phoneNumber", "phoneNumber"); try {
/**
* 重要提示如下:
* HttpUtils請(qǐng)從
* https://static.miitang.com/saas/simple/HttpUtils.java 下載
*
* 相應(yīng)的依賴(lài)請(qǐng)參照
* https://static.miitang.com/saas/simple/pom.xml
*/
HttpResponse response = HttpUtils.doPost(host, path, method, headers, querys, bodys);
// 獲取 response 的 body
String resStr = EntityUtils.toString(response.getEntity());
System.out.println(resStr);
int statusCode = response.getStatusLine().getStatusCode();
if(statusCode == 200){
// 請(qǐng)求成功,可根據(jù)業(yè)務(wù)碼(請(qǐng)求體中的code)進(jìn)行邏輯處理
} else if(statusCode == 610){
// 用戶(hù)輸入的參數(shù)問(wèn)題,可直接提示用戶(hù)
} else if(statusCode == 611){
// 系統(tǒng)準(zhǔn)備的數(shù)據(jù)問(wèn)題,如 文件數(shù)據(jù)下載失敗、數(shù)據(jù)不存在、數(shù)據(jù)重復(fù)請(qǐng)求等。 LOG it and 提示用戶(hù)
} else if(statusCode == 612){
// 用戶(hù)操作頻度問(wèn)題,可提示用戶(hù)。 LOG it and 按業(yè)務(wù)特點(diǎn)做處理
} else if(statusCode >= 500 && statusCode < 600){
// 在運(yùn)行階段發(fā)生的系統(tǒng)穩(wěn)定性問(wèn)題,客戶(hù)端可以重試,或者聯(lián)系我司客服
} else {
// 如賬戶(hù)密碼錯(cuò)誤、IP白名單問(wèn)題、余額不足等,您應(yīng)該在對(duì)接過(guò)程中解決相關(guān)問(wèn)題。
}
} catch (Exception e) {
e.printStackTrace();
}
}
}

在Python中,使用 requests 庫(kù)發(fā)送 POST 請(qǐng)求到短信推廣接口,根據(jù)響應(yīng)狀態(tài)碼進(jìn)行業(yè)務(wù)邏輯處理,包括成功、參數(shù)問(wèn)題、數(shù)據(jù)問(wèn)題、操作頻度問(wèn)題和系統(tǒng)穩(wěn)定性問(wèn)題等的處理。

if status_code = = 200 :
"請(qǐng)求成功,可根據(jù)業(yè)務(wù)碼(請(qǐng)求體中的code)進(jìn)行邏輯處理"
elif status_code = = 610 :
"用戶(hù)輸入的參數(shù)問(wèn)題,可直接提示用戶(hù)"
elif status_code = = 611 :
"系統(tǒng)準(zhǔn)備的數(shù)據(jù)問(wèn)題,如 文件數(shù)據(jù)下載失敗、數(shù)據(jù)不存在、數(shù)據(jù)重復(fù)請(qǐng)求等。 LOG it and 提示用戶(hù)"
elif status_code = = 612 :
"用戶(hù)操作頻度問(wèn)題,可提示用戶(hù)。 LOG it and 按業(yè)務(wù)特點(diǎn)做處理"
elif status_code > = 500 & status_code < 600 :
"在運(yùn)行階段發(fā)生的系統(tǒng)穩(wěn)定性問(wèn)題,客戶(hù)端可以重試,或者聯(lián)系我司客服"
else :
"如賬戶(hù)密碼錯(cuò)誤、IP白名單問(wèn)題、余額不足等,您應(yīng)該在對(duì)接過(guò)程中解決相關(guān)問(wèn)題。"

# 安全模式(AppId)
if __name__ == '__main__':

# 這里替換成您的 appId 和 secretKey
app_id = 'app_id'
secret_key = 'secret_key'

# 服務(wù)地址
url = "https://open.expauth.com/v2/sms/single/msg/sender"

payload = json.dumps({
"templateId": "templateId",
"signId": "signId",
"phoneNumber": "phoneNumber"
}, sort_keys=True, ensure_ascii=False)

cryptor = mt_utils . AESCrypt ( secret_key )
data = cryptor . aes_encrypt ( payload )
print(f'加密結(jié)果為: {data}')

sign = mt_utils.sign(app_id, secret_key, payload)
headers = {
"Content-Type": "application/json",
"X-Mce-Signature": sign
}

response = requests . request ( " POST " , url , headers = headers , data = data )
status_code = response . status_code
print ( " headers : " , response . headers )
print("http 狀態(tài)碼:", str(status_code))
res = " "
if'{'in response . text :
res = response . text
else :
res = cryptor . aes_decrypt ( response . text )
print ( res )

if status_code = = 200 :
"請(qǐng)求成功,可根據(jù)業(yè)務(wù)碼(請(qǐng)求體中的code)進(jìn)行邏輯處理"
elif status_code = = 610 :
"用戶(hù)輸入的參數(shù)問(wèn)題,可直接提示用戶(hù)"
elif status_code = = 611 :
"系統(tǒng)準(zhǔn)備的數(shù)據(jù)問(wèn)題,如 文件數(shù)據(jù)下載失敗、數(shù)據(jù)不存在、數(shù)據(jù)重復(fù)請(qǐng)求等。 LOG it and 提示用戶(hù)"
elif status_code = = 612 :
"用戶(hù)操作頻度問(wèn)題,可提示用戶(hù)。 LOG it and 按業(yè)務(wù)特點(diǎn)做處理"
elif status_code > = 500 & status_code < 600 :
"在運(yùn)行階段發(fā)生的系統(tǒng)穩(wěn)定性問(wèn)題,客戶(hù)端可以重試,或者聯(lián)系我司客服"
else :
"如賬戶(hù)密碼錯(cuò)誤、IP白名單問(wèn)題、余額不足等,您應(yīng)該在對(duì)接過(guò)程中解決相關(guān)問(wèn)題。"

在PHP中,使用 cURL 發(fā)送 POST 請(qǐng)求到短信推廣服務(wù)接口,處理并輸出相應(yīng)的業(yè)務(wù)邏輯。它包括設(shè)置請(qǐng)求頭、發(fā)送請(qǐng)求、處理響應(yīng),根據(jù)響應(yīng)狀態(tài)碼進(jìn)行不同的業(yè)務(wù)邏輯處理,如成功、參數(shù)問(wèn)題、數(shù)據(jù)問(wèn)題、操作頻度問(wèn)題、系統(tǒng)穩(wěn)定性問(wèn)題等。

 'templateId',
'signId' => 'signId',
'phoneNumber' => 'phoneNumber'
);

// 30 -- 單位分鐘
$signStr = MtUtils::sign($appId, $secretKey, time(), 3000, $params);
$encryptReqData = MtUtils::encrypt(json_encode($params),$secretKey);

$headers = array();
array_push($headers, "x-mce-signature".":".$signStr);
//根據(jù)API的要求,定義相對(duì)應(yīng)的Content-Type
array_push($headers, "Content-Type".":"."application/json;charset=utf-8");

$url = $host . $path;
$result = MtUtils::post($url,$headers,$encryptReqData);

$retMap = json_decode(MtUtils::decrypt($result[1],$secretKey), true);
$httpCode = $result[0];
$code = $retMap["code"];

// echo "rJson=".MtUtils::decrypt($result[1],$secretKey).PHP_EOL; // DEBUG

// TODO:返回值處理
if($httpCode == 200){
// 請(qǐng)求成功,可根據(jù)業(yè)務(wù)碼(請(qǐng)求體中的code)進(jìn)行邏輯處理
echo $retMap["code"].PHP_EOL;
echo $retMap["message"].PHP_EOL;
echo $retMap["hasFees"].PHP_EOL;
echo $retMap["fees"].PHP_EOL;
if($code == "FP00000"){
// SUCCESS
echo "SUCCESS";
}
else{
// FAILURE
echo "FAILURE";
}
} else {
echo $code.PHP_EOL; // DEBUG

if($httpCode == 610){
// 用戶(hù)輸入的參數(shù)問(wèn)題,可直接提示用戶(hù)
$errors = $retMap["errors"];
$errorMap = null;
foreach($errors as $key=>$value){
foreach($value as $key2=>$value2){
$errorMap[$key] = $value2;
break;
}
}
// 轉(zhuǎn)化為 key:tip
echo("idCardNo=".$errorMap["idCardNo"].PHP_EOL);
echo("name=".$errorMap["name"].PHP_EOL);
} else if($httpCode == 611){
// 系統(tǒng)準(zhǔn)備的數(shù)據(jù)問(wèn)題,如 文件數(shù)據(jù)下載失敗、數(shù)據(jù)不存在、數(shù)據(jù)重復(fù)請(qǐng)求等。 LOG it and 提示用戶(hù)
echo "修訂數(shù)據(jù)狀態(tài),不要重復(fù)操作。".PHP_EOL;
} else if($httpCode == 612){
// 用戶(hù)操作頻度問(wèn)題,可提示用戶(hù)。 LOG it and 按業(yè)務(wù)特點(diǎn)做處理
echo $retMap["message"].PHP_EOL;
} else if($httpCode >= 500 && $httpCode

總結(jié)

短信推廣API是一種強(qiáng)大的工具,用于企業(yè)進(jìn)行市場(chǎng)宣傳和推廣活動(dòng)。其主要特點(diǎn)包括群發(fā)功能、個(gè)性化內(nèi)容、鏈接跟蹤等,通過(guò)定時(shí)發(fā)送、實(shí)時(shí)反饋等機(jī)制,提高了信息傳遞的效果。在使用時(shí)需要注意合法性驗(yàn)證、用戶(hù)隱私保護(hù)、頻率控制等多個(gè)方面,以確保短信推廣的合規(guī)性和用戶(hù)體驗(yàn)。該API有助于企業(yè)提升品牌曝光度、拓展市場(chǎng)份額,為推廣活動(dòng)的成功執(zhí)行提供了有力的支持。

了解更多短信相關(guān)API

商務(wù)短信

雙向短信

短信網(wǎng)關(guān)

熱門(mén)推薦
一個(gè)賬號(hào)試用1000+ API
助力AI無(wú)縫鏈接物理世界 · 無(wú)需多次注冊(cè)
3000+提示詞助力AI大模型
和專(zhuān)業(yè)工程師共享工作效率翻倍的秘密
返回頂部
上一篇
如何在Java、Python、PHP中使用短信通知API?
下一篇
如何使用冪簡(jiǎn)集成提供的預(yù)集成服務(wù)?
国内精品久久久久影院日本,日本中文字幕视频,99久久精品99999久久,又粗又大又黄又硬又爽毛片
国产99久久久国产精品免费看| 国产一区二区三区观看| 亚洲免费视频中文字幕| 国产99久久久国产精品免费看| 日韩女优av电影| 久久精品国产网站| 久久精品一区蜜桃臀影院| 激情五月激情综合网| 欧美精品一区二区在线播放| 国v精品久久久网| 洋洋av久久久久久久一区| 日本韩国精品一区二区在线观看| 亚洲成人免费在线观看| 日韩写真欧美这视频| 黄网站免费久久| 亚洲色图一区二区| 精品动漫一区二区三区在线观看| 丰满少妇在线播放bd日韩电影| 亚洲视频资源在线| 久久影音资源网| 91精品在线一区二区| 99久久国产综合精品色伊| 婷婷久久综合九色综合伊人色| 一区二区三区精品视频在线| 欧美色涩在线第一页| 精品对白一区国产伦| 欧美日韩在线一区二区| 国产在线麻豆精品观看| 91福利国产精品| 精品福利二区三区| 91精品久久久久久蜜臀| 在线看国产一区二区| 国产一区二区三区四区在线观看| 亚洲精品免费在线观看| 久久香蕉国产线看观看99| 在线不卡中文字幕| 欧美乱妇一区二区三区不卡视频| 99国内精品久久| 91在线无精精品入口| 一本大道av一区二区在线播放| 成人性生交大片免费看视频在线| 国产精品一级黄| 国产suv一区二区三区88区| 国产成人在线色| 色哟哟欧美精品| 制服丝袜av成人在线看| 2欧美一区二区三区在线观看视频 337p粉嫩大胆噜噜噜噜噜91av | 亚洲欧美日韩系列| 亚洲妇女屁股眼交7| 日韩福利电影在线| 国产精品一区二区无线| 欧美在线不卡一区| 亚洲精品亚洲人成人网| 精品国产乱码久久久久久久| 一本色道久久加勒比精品| 4438亚洲最大| 国产精品国产三级国产a| 国产精品毛片大码女人| 久久久国产精华| 久久亚洲私人国产精品va媚药| 成人免费一区二区三区视频| 日韩影视精彩在线| 欧美自拍丝袜亚洲| 欧美日韩第一区日日骚| 欧美国产1区2区| 精品夜夜嗨av一区二区三区| 678五月天丁香亚洲综合网| 1024成人网色www| 91色综合久久久久婷婷| 欧美国产一区二区| 麻豆精品一区二区三区| 欧美成人艳星乳罩| 国内精品视频一区二区三区八戒| 91精品麻豆日日躁夜夜躁| 国产呦精品一区二区三区网站 | 亚洲欧美日韩国产综合| 不卡av在线网| 亚洲综合免费观看高清在线观看| av成人老司机| 亚洲一区二区偷拍精品| 欧美一区二区成人6969| 精品一区二区影视| 中文一区在线播放| 在线观看一区二区精品视频| 亚洲综合一区二区| 精品免费视频.| 99久久久免费精品国产一区二区| 一片黄亚洲嫩模| 国产女同性恋一区二区| 欧美性猛交xxxxxx富婆| 久久av资源站| 亚洲第一av色| 国产精品久久久久一区二区三区共| 色94色欧美sute亚洲线路一久| 免费精品视频最新在线| 一区二区三区在线免费| 久久久久9999亚洲精品| 欧美婷婷六月丁香综合色| 成人永久免费视频| 久久精品国产99| 日韩不卡在线观看日韩不卡视频| 亚洲天堂中文字幕| 国产精品美女www爽爽爽| 欧美成人一区二区| 日韩一区二区免费电影| 欧美嫩在线观看| 欧美少妇性性性| 欧美一a一片一级一片| 色狠狠桃花综合| 在线观看视频一区二区| 91国偷自产一区二区开放时间 | 555www色欧美视频| 88在线观看91蜜桃国自产| 在线电影一区二区三区| 91精品久久久久久蜜臀| 日韩午夜激情电影| 久久久精品tv| 亚洲精品免费电影| 首页国产欧美久久| 国产精品自产自拍| 97精品久久久午夜一区二区三区| www.欧美.com| 欧美曰成人黄网| 欧美xxxxxxxx| 一区二区三区在线播放| 免费的成人av| 99re66热这里只有精品3直播| 欧美浪妇xxxx高跟鞋交| 欧美精品一区在线观看| 国产精品福利影院| 蜜桃在线一区二区三区| 高清shemale亚洲人妖| 色老综合老女人久久久| 久久综合999| 日韩国产精品久久| 91一区在线观看| 国产亚洲欧美在线| 蜜桃在线一区二区三区| 欧美日韩国产精品成人| 国产亚洲成av人在线观看导航| 亚洲成人av电影在线| 色婷婷精品大视频在线蜜桃视频| 久久蜜桃av一区精品变态类天堂| 亚洲一区在线观看免费观看电影高清| 丰满白嫩尤物一区二区| 精品成人一区二区| 狠狠色2019综合网| 久久九九久久九九| 成人理论电影网| 国产精品国模大尺度视频| 国产aⅴ综合色| 国产精品天天看| 99精品黄色片免费大全| 亚洲精品成a人| 这里只有精品免费| 狠狠色伊人亚洲综合成人| 日韩欧美中文字幕一区| 国产美女一区二区| 亚洲欧洲一区二区在线播放| 色综合天天在线| 亚瑟在线精品视频| 欧美精品一区视频| 色综合久久天天| 日韩**一区毛片| 久久综合九色综合97_久久久| 国产91在线看| 午夜精品福利一区二区三区av| 欧美精品一区二区三区蜜臀| 91在线观看地址| 精久久久久久久久久久| 国产亚洲婷婷免费| 国产嫩草影院久久久久| 99久久免费视频.com| 亚洲成a人v欧美综合天堂| 久久先锋影音av鲁色资源网| 色天天综合久久久久综合片| 麻豆精品一二三| 石原莉奈一区二区三区在线观看| 国产精品久久久久桃色tv| 欧美大片一区二区三区| 欧美三级中文字| 欧美在线视频全部完| 91久久精品国产91性色tv| 丁香天五香天堂综合| 狠狠狠色丁香婷婷综合久久五月| 日日夜夜免费精品视频| 五月天一区二区| 夜色激情一区二区| 调教+趴+乳夹+国产+精品| 亚洲一区二区在线播放相泽| 一区二区视频在线| 亚洲精品国产无天堂网2021 | 亚洲图片欧美视频| 日韩有码一区二区三区| 精品一区二区三区不卡| 国产mv日韩mv欧美| 欧美亚洲丝袜传媒另类| 日韩免费视频一区二区| 欧美韩日一区二区三区四区| 五月婷婷激情综合|