API Clickatell - данные XML не найдены

Я пытаюсь использовать Connect API Clickatell ( http://www.clickatell.com/downloads/Clickatell_Connect_API_User_Guide.pdf?cid=205655) для создания пользователей и отправки смс. API Clickatell предоставляет вам конкретный URL-адрес, который необходимо отправить с учетом регистра в формате XML в виде сообщения HTTPS.

Я написал следующий простой XML

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

и я использовал различные примеры кода в Интернете (некоторые взяты из ответа от stackru, другие - из поисков 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>

Кто-нибудь использует API Connect от Clickatell, который может мне помочь, или у кого-нибудь есть идеи?

1 ответ

Решение

Мне удалось заставить его работать, используя следующий код

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
            }

    }

}

Дайте мне знать, если вы ошибетесь, чтобы мы могли заняться этим дальше!

Другие вопросы по тегам