0

下面的代码是用JAVA语言发送短信,

import java.net.*;
import java.io.*;
import java.util.Scanner;

public class site2sms
{
    //Replace your site2sms username and password below
    static final String _userName = "username";
    static final String _password = "password";
    static final String _url = "http://smsapi.cikly.in/index.php";  
    //static final String _url = "http://smsapi.cikly.in/index.php";
    //static final String _url = "http://www.site2sms.com/user/send_sms_next.asp";
    static final String charset = "UTF-8";

    //to build the query string that will send a message
    private static String buildRequestString(String targetPhoneNo, String message) throws UnsupportedEncodingException
    {
        String [] params = new String [5];
        params[0] = _userName;
        params[1] = _password;
        params[2] = message;
        params[3] = targetPhoneNo;
        params[4] = "site2sms";

        String query = String.format("uid=%s&pwd=%s&msg=%s&phone=%s&provider=%s",
        URLEncoder.encode(params[0],charset),
        URLEncoder.encode(params[1],charset),
        URLEncoder.encode(params[2],charset),
        URLEncoder.encode(params[3],charset),
        URLEncoder.encode(params[4],charset)
        );
    return query;
    }

    public static void sendMessage(String reciever, String message) throws Exception
    {

        System.out.println("hi!hello");
        //To establish the connection and perform the post request
        URLConnection connection = new URL(_url + "?" + buildRequestString(reciever,message)).openConnection();
        connection.setRequestProperty("Accept-Charset", charset);

        //This automatically fires the request and we can use it to determine the response status
        InputStream response = connection.getInputStream();
        BufferedReader br = new BufferedReader(new InputStreamReader(response));
        //System.out.println(br);

        System.out.println(br.readLine());
    }

    public static void main(String [] args) throws Exception
    {
        System.out.println("enter Mobile No:");
        Scanner scanIn = new Scanner(System.in);

        String testPhoneNo = scanIn.nextLine();
        scanIn.close();            
        String testMessage = "Sending Messages From java is not too hard";
        sendMessage(testPhoneNo,testMessage);
    }
} 

当我运行程序时,没有编译错误,也没有运行时错误,但消息没有传递到相应的号码。

请帮助我,任何建议都可以接受。

谢谢并恭祝安康,

4

1 回答 1

2

它写在您班级的评论中:替换您的site2sms用户名和密码。我想你必须在 smsapi.cikly.in 中订阅一个帐户

于 2013-05-02T11:32:34.627 回答