0

我正在使用标准 java.net 包向 Rest WEB 服务发布消息。这是我联系网络服务并向其发布请求的方式。

package com;

import java.io.IOException;
import java.io.OutputStream;
import java.net.HttpURLConnection;
import java.net.URL;

public class NetClientPost {

    public static void main(String[] args) {
        HttpURLConnection conn = null;
        OutputStream os = null;
        try {

            URL url = new URL("http://localhost:8080/RestTest/ajax/user_info");
            conn = (HttpURLConnection) url.openConnection();

            // System.out.println(conn.getResponseCode());

            conn.setDoOutput(true);
            conn.setRequestMethod("POST");
            conn.setRequestProperty("Content-Type", "application/json");

            String input = "{\"qty\":100,\"name\":\"sdsfds 4\"}";

            os = conn.getOutputStream();
            os.write(input.getBytes());
            os.flush();

            conn.getInputStream();

        }

        catch (Exception e) {

            e.printStackTrace();

        }

        finally {
            try {
                os.close();
            } catch (IOException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
            conn.disconnect();

        }

    }

}

我担心的是,如果服务仅启动并运行,我想将请求发布给它,否则不。

请告诉我这是否可以检查?

提前致谢 。

4

1 回答 1

0

您可以尝试建立与主机的套接字连接。如果套接字运行良好,您的请求应该可以工作。

只是一个非常简短的例子:

Socket client;

try{
   client = new Socket("localhost", 8080);
   // Do your stuff
} catch(Exception e) {
   System.out.println("Error");
}

文档:https ://developer.android.com/reference/java/net/Socket.html

有很多 Socket 示例,我希望这种方法可以帮助您解决问题。

于 2013-06-20T18:48:27.257 回答