网络阅读功能不支持';在Matlab2016b中读取JSON是不可行的
我在跑步网络阅读功能不支持';在Matlab2016b中读取JSON是不可行的,json,matlab,web,Json,Matlab,Web,我在跑步 >> webread(url) Error using webread (line 116) Too many input arguments. url只是返回JSON的url 更新 >> webread('https://jsonplaceholder.typicode.com/users'); 116 [url, postData, options] = encodeInputs(url, queryParams, options); Error usin
>> webread(url)
Error using webread (line 116)
Too many input arguments.
url
只是返回JSON的url
更新
>> webread('https://jsonplaceholder.typicode.com/users');
116 [url, postData, options] = encodeInputs(url, queryParams, options);
Error using webread (line 116)
Too many input arguments.
>> ver
-----------------------------------------------------------------------------------------------------
MATLAB Version: 9.1.0.441655 (R2016b)
Operating System: Microsoft Windows 10 Pro Version 10.0 (Build 16299)
Java Version: Java 1.8.0_111-b14 with Oracle Corporation Java HotSpot(TM) 64-Bit Server VM mixed mode
-----------------------------------------------------------------------------------------------------
MATLAB Version 9.1 (R2016b)
....
更新2
职能内容:
function varargout = webread(url, varargin)
...
% Parse the inputs.
[queryParams, options] = parseInputs(mfilename, varargin);
% Encode inputs.
[url, postData, options] = encodeInputs(url, queryParams, options);
第116行是最后一行
路径是C:\ProgramFiles\MATLAB\R2016b\toolbox\MATLAB\external\interfaces\webservices\restful\webread.m
更新3
跟踪显示根本原因在C:\Program Files\MATLAB\R2016b\toolbox\MATLAB\external\interfaces\webservices\http\+MATLAB\+net\URI.m
的第427行中,该行表示:
obj.Path = strsplit(string(value), '/', 'CollapseDelimiters', false);
及
strsplit
是我的函数,它覆盖了内置函数 它适用于我的https://jsonplaceholder.typicode.com/users
。你的网页是RESTful吗?@NickyMattsson你的网页对我不起作用你的webread
功能的内容是什么?@NickyMattsson请查看我的更新我说的对,假设你已经解决了问题?如果是这样,一个技巧是,每当我创建一个新函数时,我总是使用edit*name*
来创建它,因为如果它已经存在于文件路径中,那么它就会打开,因此我确信我不会覆盖现有函数。
K>> strsplit(string(value), '/', 'CollapseDelimiters', false)
Error using strsplit
Too many input arguments.
K>> value
value =
string
"/users"