使用Twilio发送短信android
问题描述:
我想使用Twilio发送短信。我使用的是post中给出的代码。但我得到的答复代码是201而不是200.答案<?xml version='1.0' encoding='UTF-8'?>
也很奇怪。代码或证书有错吗?使用Twilio发送短信android
private class AsyncTaskRunner extends AsyncTask<String, String, String> {
private String resp;
@Override
protected String doInBackground(String... params) {
try{
String twilioSID="XYZ";
String twilioSecret="ABC";
String urlStr = "https://"+twilioSID+":"+twilioSecret+"@api.twilio.com/2010-04-01/Accounts/"+twilioSID+"/SMS/Messages";
HttpClient httpclient = new DefaultHttpClient();
HttpPost httppost = new HttpPost(urlStr);
String base64EncodedCredentials = "Basic "
+ Base64.encodeToString(
("XYZ" + ":" + "ABC").getBytes(),
Base64.NO_WRAP);
httppost.setHeader("Authorization", base64EncodedCredentials);
List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>();
nameValuePairs.add(new BasicNameValuePair("From", "+12389234455"));
nameValuePairs.add(new BasicNameValuePair("To", "+918423664906"));
nameValuePairs.add(new BasicNameValuePair("Body", "Welcome to Twilio"));
httppost.setEntity(new UrlEncodedFormEntity(
nameValuePairs));
// Execute HTTP Post Request
HttpResponse response = httpclient.execute(httppost);
int status = response.getStatusLine().getStatusCode();
System.out.println("sammy_response_code "+status);
HttpEntity entity = response.getEntity();
if(entity != null){
resp = EntityUtils.toString(entity);
}
}catch (Exception e){
System.out.println("sammy_Exception "+e);
}
return resp;
}
@Override
protected void onPostExecute(String result) {
//pd.dismiss();
System.out.println("sammy_response "+result);
}
}
答
请波纹管检查所有:
201响应
- 这是不是 “要” 的电话号码是否正确?它总是值得检查...
- “To”手机是否有接待?如果没有,请尝试前往 的接待处,然后重试。
- “收件人”手机是否收到其他来源发送的短信? 尝试使用另一部手机向“手机”发送测试消息。
- 您正在发送漫游到国际的电话? Twilio目前无法支持SMS的国际漫游 。
- 是国家 或运营商的“请勿联系”列表中的“收件人”电话号码?例如,印度有一个特别严格的国家Do 非联系清单。在收到来自Twilio的SMS消息之前,“To”号码将需要从任何 Do Not Contact列表中删除。
- 您正在发送短信的国家是否有特殊的 前缀,用于发送短信?墨西哥和 阿根廷是这方面的例子。
- 终端号码的提供商是否过滤了它?某些运营商将 发送大量短信的黑名单号码。尝试从另一个Twilio长码发送 相同的消息。如果正确收到 ,您可能会遇到运营商的音量阈值。 查看此FAQ以获取更多信息。
- 尝试多次。尝试多次并没有什么坏处。再次尝试 通常是向自己证明和帮助您确保一切正确无误的最佳方式。一定要复制 SMS消息SID为每个未到达的尝试。
答
当我在URL后添加“.json”时,得到了回应。即使响应代码是201,响应即将到来。
https://www.twilio.com/blog/2016/05/how-to-send-an-sms-from-android.html –