Octave可以通过互联网与网站进行通信。这里的web该函数将启动一个外部web浏览器以交互方式查看网站。其主要函数--urlread,urlwrite,webread,webwrite--是内部Octave函数,可以向Octave和从URL(统一资源定位器)标识的网站导入或导出数据。
status = web () ¶status = web (url) ¶status = web (url, option) ¶status = web (url, option_1, …, option_N) ¶[status, h, url] = web (…) ¶打开url在默认系统web浏览器中。
在没有给出任何参数的情况下,地址https://www.octave.org等厚的。
可以传递其他参数MATLAB兼容性,但被忽略。
返回值status具有以下值之一:
返回值handle和url当前未实现,但出于兼容性考虑。
s = urlread (url) ¶s = urlread (url, Name, Value, …) ¶[s, success] = urlread (url, …) ¶[s, success, message] = urlread (url, …) ¶下载从其指定的远程文件url并以字符串形式返回其内容s.
例如
s = urlread ("http://ftp.octave.org/pub/README");
变量success如果下载成功,则为1,否则为0,在这种情况下message包含错误消息。
如果没有指定输出参数并且发生错误,则通过Octave的错误处理机制发送错误信号。
此函数使用libcurl。curl库支持HTTP、FTP和FILE协议等。可以在URL中指定用户名和密码。例如:
s = urlread ("http://user:[email protected]/file.txt");
可用于键值对参数的选项如下:
Get用于GET请求的键值对参数元胞。
Post用于POST请求的键值对参数元胞。
Timeout超时时间。
UserAgent请求的User agent字符串。
Username登录的用户名。
Password登录的密码。
Charset字符编码(储存但目前不使用)。
键值对参数的示例如下:
s = urlread ("http://www.example.com/data",
"Get", {"term", "octave"}, "Timeout", 10);
为了向后兼容,可以使用旧的调用形式:
s = urlread ("http://www.google.com/search",
"get", {"query", "octave"});
详见: urlwrite, weboptions.
(url, localfile) ¶(url, localfile, Name, Value, …) ¶f = urlwrite (url, localfile, …) ¶[f, success] = urlwrite (url, localfile, …) ¶[f, success, message] = urlwrite (url, localfile, …) ¶下载从其指定的远程文件url并将其另存为localfile.
例如
urlwrite ("http://ftp.octave.org/pub/README",
"README.txt");
下载文件的完整路径在中返回f.
变量success如果下载成功,则为1,否则为0,在这种情况下message包含一条错误消息。
如果没有指定输出参数并且发生错误,则通过Octave的错误处理机制发送错误信号。
此函数使用libcurl。curl库支持HTTP、FTP和FILE协议等。可以在URL中指定用户名和密码,例如:
urlwrite ("http://username:[email protected]/file.txt",
"file.txt");
可用于键值对参数的选项如下:
Get用于GET请求的键值对参数元胞。
Post用于POST请求的键值对参数元胞。
Timeout超时时间。
UserAgent请求的User agent字符串。
Username登录的用户名。
Password登录的密码。
Charset字符编码(储存但目前不使用)。
键值对参数的示例如下:
urlwrite ("http://www.example.com/data.txt", "data.txt",
"Timeout", 10, "UserAgent", "Octave");
For backward compatibility, the old calling form is also supported:
urlwrite ("http://www.google.com/search", "search.html",
"get", {"query", "octave"});
详见: urlread, weboptions.
response = webread (url) ¶response = webread (url, name1, value1, …) ¶response = webread (…, options) ¶从RESTful web服务中读取内容。
从指定的web服务读取内容url并将内容返回response.
给定的所有键值对(name1,value1,…)作为查询参数附加到url。若要在消息正文中放置查询,请使用webwrite。web服务定义可接受的查询参数。
options是weboptions对象,该对象可用于添加其他HTTP指定参数。此参数可以与任一调用形式一起使用。详见help weboptions以获取支持的HTTP参数的完整列表。
详见: weboptions,webwrite.
response = webwrite (url, name1, value1, …) ¶response = webwrite (url, data) ¶response = webwrite (…, options) ¶将数据写入RESTful web服务。
将内容写入指定的web服务url并在中返回显应response.
给定的所有键值对(name1,value1,…)是添加到指定方法主体的查询参数对(get,post,put等
options是weboptions对象,该对象可用于添加其他HTTP指定参数。此参数可以与任一调用形式一起使用。详见help weboptions以获取支持的HTTP参数的完整列表。
详见: weboptions,webread.
options = weboptions () ¶options = weboptions (name1, value1, …) ¶指定RESTful web服务的参数。
如果不带参数调用,则返回一个weboptions对象,用于指定对web服务的请求参数。一个weboptions
对象是一个可选输入参数,用于webread和
webwrite函数。
多个名称和值对参数可以按任意顺序指定为name1,value1,name2,value2等
参数名称必须匹配确切地下表中指定的其中一个。
以下参数可用:
‘auto’ (default), ‘UTF-8’, ‘US-ASCII’. ‘auto’ 选择数据的 content-type 编码。
默认值是 ‘Octave/version’, 此时 ‘version’ 是当前版本的Octave,由version返回.
默认为5秒。特殊值‘Inf’将超时设置为最大值2147.483647秒。
默认是''. 必须是字符串。
默认是''. 必须是字符串或者字符向量。
编程注意:如果你显示一个weboption对象并且设置了Password属性,那么其值将以包含'*'的字符串显示。
但是,对象以纯文本形式存储密码属性值。
其必须是字符串或者字符向量。它与 ‘KeyValue’搭配使用.
‘KeyName’ 必须在赋值后才能指定这个字段.
请求头的键和值用m-by-2的字符串单元数组指定,添加到HTTP请求头。
HeaderFields{i,1} 是字段名,
HeaderFields{i,2} 是字段值。
weboptions ("HeaderFields",
{"Content-Length", "78" ;
"Content-Type", "application/json"})
创建一个weboptions对象,包含两个字段:
Content-Length ,值为 78 , Content-Type ,值为
application/json.
以下值可用:'auto’, ‘text’, ‘json’
默认值为'auto’. 它会自动确定内容类型。所有其他格式,如'audio’, ‘binary'等,可在中获得MATLAB当前不支持。
以下方法可用:'get’, ‘put’, ‘post’, ‘delete’, ‘patch’
webread使用HTTP GET方法。webwrite默认使用HTTPPOST方法。
版权所有 © 2024-2026 Octave中文网
ICP备案/许可证号:黑ICP备2024030411号-2