这可能是一个愚蠢的问题,但我有一个晚上.在我正在开发RESTful API的应用程序中,我们希望客户端以JSON格式发送数据.此应用程序的一部分要求客户端上载文件(通常是图像)以及有关图像的信息.
我很难跟踪单个请求中如何发生这种情况.是否可以将文件数据Base64转换为JSON字符串?我是否需要向服务器发送2个帖子?我不应该为此使用JSON吗?
作为旁注,我们在后端使用Grails,这些服务由本机移动客户端(iPhone,Android等)访问,如果其中任何一个有所不同.
List<double[]> x = new ArrayList<double[]>();
x.add(new double[]={1,2,3,4,54,6});
Run Code Online (Sandbox Code Playgroud)
元素1,2,3,4,54,6被添加到x
x.get(0) ---> returns 1
Run Code Online (Sandbox Code Playgroud)
但这样做,数组的地址被添加?为什么
List<double[]> x = new ArrayList<double[]>();
double[] name=new double[5];
name[0]=1
name[1]=3;
name[2]=3;
.
.
.
.
x.add(name);
getting x.get(0) ---> returns @as12cd2 (address of the array)
Run Code Online (Sandbox Code Playgroud) 问题
我BehaviourSubject在Angular2中使用了几个变量来从服务获取数据并更新控制器中的数组.
问题是所有相应的.subscribe()函数执行相同的操作,我找不到重用代码的方法 - 也许将lambda函数传递给.subscribe()?的主体?
一次又一次地重新键入相同的代码是没有意义的 - 它会影响组件的可读性.
场景:
使用来自不同来源的数据更新图表
this.catagoryASubject.subscribe(
value => {
// updating array and chart
this.radarChartData.forEach((val, i) => { if (val.label == value.name) { this.radarChartData[i].data = value.data } });
},
err => console.log("error"),
() => console.log("complete")
);
this.catagoryBSubject.subscribe(
// same code as in the above subscriber
);
Run Code Online (Sandbox Code Playgroud) 我正在尝试以以下模式将一些文件和参数作为多部分发布。我试过字典和列表。list扔了一个HTTP 415。所以我继续前进dict。我想以通用名称“文件”(以及它们各自的文件名)发布一些参数以及多个文件。
字符串参数工作正常,错误在于文件上传
在多部分 dict 对象中传递的数据
multipart = {
'param1': 'paramVal1',
'param2': 'paramVal2',
'file': (("file1.xml", ByteIO), ("file1.xml", ByteIO)),
}
Run Code Online (Sandbox Code Playgroud)
POST 使用 python-requests
requests.post(url='http://localhost:8888/upload',files=multipart)
Run Code Online (Sandbox Code Playgroud)
抛出错误
File "C:\Python36\lib\site-packages\requests\api.py", line 107, in post
return request('post', url, data=data, json=json, **kwargs)
File "C:\Python36\lib\site-packages\requests\api.py", line 53, in request
return session.request(method=method, url=url, **kwargs)
File "C:\Python36\lib\site-packages\requests\sessions.py", line 454, in request
prep = self.prepare_request(req)
File "C:\Python36\lib\site-packages\requests\sessions.py", line 388, in prepare_request
hooks=merge_hooks(request.hooks, self.hooks),
File "C:\Python36\lib\site-packages\requests\models.py", line 296, in prepare
self.prepare_body(data, files, json)
File "C:\Python36\lib\site-packages\requests\models.py", …Run Code Online (Sandbox Code Playgroud) angular ×1
file-upload ×1
grails ×1
java ×1
json ×1
post ×1
python ×1
python-3.x ×1
rest ×1
rxjs ×1
typescript ×1