Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/267.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
将ArrayList从Java传递到PHP Web服务_Java_Php_Web Services - Fatal编程技术网

将ArrayList从Java传递到PHP Web服务

将ArrayList从Java传递到PHP Web服务,java,php,web-services,Java,Php,Web Services,我有一个java程序,它包含一个用户名和密码(字符串)以及一个包含4个属性(long、int、int-int)的对象的ArrayList,我想将这3个属性传递给一个WebService(我还没有做)。我的主机是Bluehost,它是一个共享服务器,所以我没有可用的Java服务器端,它需要在PHP中 连接到webservice并将其传递到php的最佳方式是什么 编辑 好的,我现在有这样的东西: public void upload(ArrayList<MyObject> myList)

我有一个java程序,它包含一个用户名和密码(字符串)以及一个包含4个属性(long、int、int-int)的对象的ArrayList,我想将这3个属性传递给一个WebService(我还没有做)。我的主机是Bluehost,它是一个共享服务器,所以我没有可用的Java服务器端,它需要在PHP中

连接到webservice并将其传递到php的最佳方式是什么

编辑

好的,我现在有这样的东西:

public void upload(ArrayList<MyObject> myList) throws Exception{

    //HTTP POST Service
    try{
        HttpClient httpclient = HttpClientBuilder.create().build();
        URI uri = new URIBuilder()
        .setScheme("http")
        .setHost("www.myHost.com")
        .setPath("/myWebservice.php")
        .setUserInfo(userID, password)
        .build();
        HttpPost httppost = new HttpPost(uri);
        httpclient.execute(httppost);
    }catch (Exception e) {
        e.printStackTrace();
    }
}
public void upload(ArrayList myList)引发异常{
//HTTP邮政服务
试一试{
HttpClient HttpClient=HttpClientBuilder.create().build();
URI=新的URIBuilder()
.setScheme(“http”)
.setHost(“www.myHost.com”)
.setPath(“/myWebservice.php”)
.setUserInfo(用户ID、密码)
.build();
HttpPost HttpPost=新的HttpPost(uri);
httpclient.execute(httppost);
}捕获(例外e){
e、 printStackTrace();
}
}

但我仍然不确定如何通过某种方式传递ArrayList,以便能够在PHP端接收并将其拆分为组件?

您可以使用HTTP客户端,例如此客户端


并向您的web服务发送GET/POST请求。

编写java程序我让java程序包含所有变量-我只是不确定现在如何将它们传递到外部php webservice@db579那么,数据应该如何发送呢?这项服务期望得到什么?JSON?表单编码?查询字符串?肥皂?获取/发布?其他?这就是我真正的问题所在-服务应该期望什么,Java程序应该如何通过它。做这件事最简单/最好的方法是什么?@AndrewThompson说得对。不是那个帖子会很安全,但会稍微好一点。。我想
POST
就足够了。我的错。为什么邮件不安全?我想使用URI生成器的.setParameter方法传递参数的想法正确吗?@db579,因为密码在网络上以明文形式传递。因此,几乎任何人都可以嗅探/窃听它。通常,当您进行身份验证时,您不向服务器发送哈希值,而是发送密码,服务器对其进行加密/哈希,然后与存储的数据库数据进行比较。现在,即使您发送散列,它仍然不安全,因为找到您的散列的任何人都可以登录并发出更多的GET/POST请求,就像您代表您那样。根据你提出的方案,这个黑客不需要知道你的密码,一旦他得到了你的哈希。散列足够让他拿走你的身份并开始提出请求。我看不出有什么办法可以通过HTTP保证安全。你需要HTTPS。