Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/laravel/10.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
Web services 如何在控制器中接收图像文件,其中图像作为Ws.url中的参数附加?_Web Services_Playframework_Playframework 1.x_Url Parameters_Image File - Fatal编程技术网

Web services 如何在控制器中接收图像文件,其中图像作为Ws.url中的参数附加?

Web services 如何在控制器中接收图像文件,其中图像作为Ws.url中的参数附加?,web-services,playframework,playframework-1.x,url-parameters,image-file,Web Services,Playframework,Playframework 1.x,Url Parameters,Image File,图像文件通过play framework 1.2.4中的Webservice Ws.url(“控制器操作”).files(图像文件)作为参数附加。如何在该控制器中接收该图像文件?有人能帮我吗。让我们发布两个文件: WS.url("http://127.0.0.1:9000/process") .files(new File("kitten.jpg"), new File("dog.jpg")) .post(); 控制器方法如下所示: public static void process

图像文件通过play framework 1.2.4中的Webservice Ws.url(“控制器操作”).files(图像文件)作为参数附加。如何在该控制器中接收该图像文件?有人能帮我吗。

让我们发布两个文件:

WS.url("http://127.0.0.1:9000/process")
  .files(new File("kitten.jpg"), new File("dog.jpg"))
  .post();
控制器方法如下所示:

public static void process(File dummy) {
  List<Upload> uploads = (List<Upload>) request.args.get("__UPLOADS");

  for (Upload upload : uploads) {
    System.out.println("Uploaded file name:         " + upload.getFileName());
    System.out.println("Uploaded file is stored as: " + upload.asFile());
  }
}
公共静态无效进程(文件虚拟){
List uploads=(List)request.args.get(“\uu uploads”);
用于(上载:上载){
System.out.println(“上传的文件名:+upload.getFileName());
System.out.println(“上传的文件存储为:“+upload.asFile()”);
}
}
非常难看,但这是我让它工作的唯一方法。
dummy
参数必须存在,否则uploads请求参数将为
null


图像可以通过
上传
对象以不同的方式访问。

维斯特拉斯:非常感谢都德:)如何以相同的方式将对象作为参数传递并在控制器中接收?我想将Mvc模型对象作为参数传递。为什么要使用WS.url来传递呢?实际上我已经创建了两个播放应用程序。我想在这两个应用程序之间进行通信。Iam使用Ws.url通过调用另一个应用程序的控制器以及来自一个应用程序的ip地址进行通信。在此上下文中,我希望将文件和对象(MVC模型对象)传递给其他应用程序的控制器。如果无法使用WS.url传递对象,那么将对象从一个应用程序的控制器发送到另一个应用程序的控制器的更好方法是什么?我对此进行了探索,但无法找到合适的解决方案。一种方法是将MVC模型对象序列化为JSON,然后使用WS.url().body().post()发送。在接收端,将body参数中的JSON结构反序列化回MVC模型对象。如何将JSON字符串反序列化到对象?