从MATLAB JSON API调用后(Diffchecker API)

4视图(30天)
埃米尔Skoglund
埃米尔Skoglund 2022年9月1日
评论道: Yogita约2小时前
你好,
我试图从Diffchecker API获取数据(https://www.diffchecker.com/public-api/)
这是他们使用的例子:
旋度——位置请求发布的https://api.diffchecker.com/public/text?output_type = html电子邮件= YOUR_EMAIL \
——头“application / json内容类型:\
——data-raw”{
“左”:“玫瑰是红色的\ nviolets是蓝”,
“正确”:“玫瑰是绿色\ nviolets是紫色的”,
“diff_level”:“单词”
}'
现在我不能得到这个工作Matlab。我试过所有webwrite()的解决方案,我可以找到在Mathworks,如下 https://se.mathworks.com/matlabcentral/answers/400676-translating-curl-into-matlab-webwrite answer_320645 :
%的POST请求。
=数据结构(“output_type”,“html”,“电子邮件”,“my.email@gmail.com”,“diff_level”,“单词”,
“左”,“hej hej hej”,“对”,“nej nej hej”);
%的选择要求。
选择= weboptions (“RequestMethod”,“职位”,“MediaType”,“application / json”);
server_url =“https://api.diffchecker.com/public/text”;
响应= webwrite (server_url、数据选项);
和变化:
url =“https://api.diffchecker.com/public/text?output_type=html&email=my.email@gmail.com”;
选择= weboptions (“RequestMethod”,“职位”,“MediaType”,“application / json”);
身体=结构(“左”,“嘿,嘿嘿”,“对”,“嘿,溜溜球”);
身体=结构(“秩序”、身体);
响应= webwrite (url、身体、选项);
这一切都是我服务器返回状态400“坏请求”。
请帮助我。
3评论
Yogita
Yogita 4分钟前
做一个JSON API调用MATLAB的Diffchecker API,您可以使用 webwrite 函数与相应的参数。然而,看来,你遇到一个“坏”请求错误当API调用。故障诊断和解决这个问题,让我们分解问题,并提供一个潜在的解决方案。
首先,重要的是要注意,您提供Diffchecker API的例子是使用cURL语法。我们需要把它转换成使用MATLAB的语法 webwrite 。这里有一个更新版本的MATLAB代码:
%定义API端点URL
url =“https://api.diffchecker.com/public/text”;
%设置请求参数
params =结构(“output_type”,“html”,“电子邮件”,“YOUR_EMAIL”);
=数据结构(“左”,玫瑰是红色的\ nviolets是蓝色的,
“对”,玫瑰是绿色\ nviolets是紫色的,
“diff_level”,“词”);
有效载荷=结构(“数据”、数据“参数”、参数);
%指定请求的选项
选择= weboptions (“RequestMethod”,“职位”,“MediaType”,“application / json”);
%的API调用
响应= webwrite (url、有效载荷、选项);
在这段代码中,我们定义的API端点URL url 并设置请求参数 参数个数 数据 结构。然后,我们创建一个 有效载荷 包含的参数和数据结构。最后,我们使用API调用 webwrite ,传递 url , 有效载荷 , 选项
如果你仍然收到“坏请求”错误,这是可能的,问题在于身体的格式要求。进一步解决,你可以在网上使用diff检查器工具,您提到的问题,比较预期的请求主体与一个由MATLAB代码生成。diff检查器工具的链接: Diff检查程序
复制请求主体由MATLAB代码生成和预期的请求主体的API文档工具。它将突出两个之间的任何差异,帮助您识别任何差异或失踪的参数。
通过使用diff检查器工具,您可以比较预期的请求主体和一个由MATLAB代码生成和确定任何差异。这将帮助您解决“坏请求”问题和成功使JSON API调用MATLAB。

登录置评。

答案(0)

下载188bet金宝搏


释放

R2020b

社区寻宝

找到宝藏在MATLAB中央,发现社区如何帮助你!

开始狩猎!