java - Clickatell Connect API - 未找到 XML 数据

标签 java post https xml-parsing clickatell

我正在尝试使用 Clickatell 的 Connect API ( http://www.clickatell.com/downloads/Clickatell_Connect_API_User_Guide.pdf?cid=205655 ) 来创建用户并发送短信。 Clickatell 的 API 为您提供了一个特定的 URL,您必须将区分大小写的 XML 作为 HTTPS 表单帖子提交。

我编写了以下简单的 xml

<?xml version="1.0"?>
<CLICKATELLSDK>
<Action>get_list_country</Action>
</CLICKATELLSDK>

我已经在线使用了各种代码示例(一些来自 stackoverflow 的答案,另一些来自 google 搜索 - 即 http://www.java-tips.org/other-api-tips/httpclient/how-to-send-an-xml-document-to-a-remote-web-server-using-http-5.html )来了解如何将其作为 HTTPS POST 提交,但我总是得到以下响应。

<?xml version="1.0"?>
<CLICKATELLSDK>
<Result>Error</Result>
<Error>999</Error>
<Description>No XML Data found</Description>
<Timestamp>1353538744</Timestamp>
</CLICKATELLSDK>

任何使用 Clickatell 的 Connect API 的人都可以帮助我或者有任何想法吗?

最佳答案

我设法使用以下代码让它工作

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.net.HttpURLConnection;
import java.net.URL;

public class HttpPost {

    /**
     * @param args
     */
    public static void main(String[] args) {
        // TODO Auto-generated method stub

        String postUrl = "https://connect.clickatell.com/[AuthenticationToken]";

            try {
                String tStatus = "";
                URL url = new URL(postUrl + "&XML=<clickatellsdk><action>get_list_country</action></clickatellsdk>");

                BufferedReader br = new BufferedReader(new InputStreamReader(url.openStream()));

                String line;
                while ((line = br.readLine()) != null)
                {
                    tStatus = line;
                    System.out.println(tStatus);
                }

            } catch (Exception e)
            {
                //Handle Exception
            }

    }

}

如果您做得不对,请告诉我,以便我们进一步解决问题!

关于java - Clickatell Connect API - 未找到 XML 数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13519476/

相关文章:

ssl - 没有反向代理的 koa-sslify 模块的 Koa HTTPS 连接

ruby-on-rails - 文件末尾到达 EOFError (Databasedotcom + Rails + Heroku)

带有 CustomBinding 的 WCF 服务配置 HTTPS

java - 查找 JTable 列中值的总和

http - 您可以在 header 中设置发布请求的大小限制吗?

java - 按键监听器不响应数字键盘数字

javascript - 无法将 CSRF token 添加到 Django POST 请求的 XMLhttpRequest

jquery - 如果 URL 在数据中,POST 返回 403

java - Spring Boot 中的任务执行器

java - 如何在 Android 上以编程方式创建断点