[英]can you use curl to post to a local file?
我尝试使用curl将其发布到本地文件,但失败。 能做到吗 我的两个管理系统都在同一台服务器上,似乎不必为了访问同一硬盘上的文件而遍历整个Internet系统。
使用localhost
并不能解决问题。
我还尝试使用发布数据到$_SERVER[DOCUMENT_ROOT].'/dir/to/file.php'
。 它是针对加密的API的,因此我不确定它的工作原理。 它用于我拥有的计费系统,我刚刚意识到它可以将数据发送回(API)。
它只是发布数据和XML响应。 我可以编写一个html表单标签和输入字段,并得到相同的结果,但实际上没有其他要知道的内容。
主要问题是:curl是否有能力发布到本地文件?
它是发布数据。 它是被加密的,所以我不知道究竟它是如何工作的API
没有更多细节,没有人可以回答您应该怎么做。
但是,如果它确实是本地服务器上的POST接收脚本,则可以使用URL向其发送POST请求:
$url = "https://$_SERVER[SERVER_NAME]/path/to/api.php";
然后从cURL调用接收其输出。
$data = curl($url)->post(1)->postdata(array("billing"=>1234345))
->returntransfer(1)->exec();
// (you would use the cumbersome curl_setopt() calls instead)
这样就得到了XML或JSON或其他响应。
如果它们在同一驱动器上,请改用文件操作:
file_put_contents('/path/to/the/file', $contents);
仅在出于某些原因绝对需要http层参与或与远程服务器打交道时,才应使用CURL。 使用HTTP还意味着您需要使“目标”脚本能够处理文件上传以及您需要发送的任何其他数据,然后该脚本最终仍然必须进行文件操作,因此实际上,您已经进行环球旅行只是为了让您可以从客厅移到厨房。
file://locafilespec.ext为我工作。 我在Linux盒子上的同一文件夹中有2个文件,而该文件夹不在Web服务器提供的文件夹中,我使用file://包装器将其发布到file://test.php,并且效果很好。 它不是很漂亮,但是它将对开发人员有效,直到我将其移至最终的静止位置为止。
curl是否有能力发布到本地文件?
要卷曲本地文件,您需要将HTTP服务器设置为file://
将不起作用,因此:
npm install http-server -g
然后在文件所在的文件夹中运行HTTP服务器:
$ http-server
请参阅: 将node.js用作简单的Web服务器 。
然后从命令行向localhost
测试curl请求,如下所示:
curl http://127.0.0.1:8081/file.html
然后,您可以在PHP中执行相同的操作。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.