php fsockopen post json数据
程序员文章站
2022-04-09 08:07:24
...
php fsockopen 可以 post json数据吗? 知道的请留下代码,在此谢过!
回复内容:
php fsockopen 可以 post json数据吗? 知道的请留下代码,在此谢过!
因为不清楚你所说的 json
数据具体是想要怎么提交, 故分以下两种情况做为展示.
第一种情况: 提交的整个数据就是
JSON
格式的内容.
1.php
'hello', 'b'=>'world', 'c'=>'汉字');
$data = json_encode($post_fields);//转换为JSON格式的字符串
$data = array(
'POST /123.php HTTP/1.0',//请求的地址
'Host: localhost',
'Content-type: application/x-www-form-urlencoded',
'Content-length: '. strlen($data),//填充数据长度
'',//请求头与数据的分隔符
$data//填充数据体
);
//注意修改 域名和端口号
$sock = fsockopen("localhost", 800, $errno, $errstr, 30);
if (!$sock) die("$errstr ($errno) ");
fwrite($sock, implode("\r\n", $data));
$data = '';
while(!feof($sock)){//测试文件指针是否到了文件结束的位置
$data .= fgets($sock,1024);
}
fclose($sock);
echo $data;
与之对应的123.php
文件的代码如下:
代码执行后的结果如下:
HTTP/1.1 200 OK
Date: Mon, 21 Sep 2015 06:34:12 GMT
Server: Apache/2.4.12 (Win32) PHP/5.6.9
X-Powered-By: PHP/5.6.9
Content-Length: 118
Connection: close
Content-Type: text/html; charset=UTF-8
object(stdClass)#1 (3) {
["a"]=>
string(5) "hello"
["b"]=>
string(5) "world"
["c"]=>
string(6) "汉字"
}
第二种情况:
JSON
格式的数据做为 数据 进行提交.
在上面代码的基础上做如下改动:1.php
$data = 'xyz=' . json_encode($post_fields);//转换为JSON格式的字符串
123.php
执行结果与之前的一样.
上一篇: java比php安全吗
下一篇: java ftp上传失败怎么办
推荐阅读
-
PHP下使用CURL方式POST数据至API接口的代码_PHP
-
解析PHP 使用curl提交json格式数据_PHP
-
php开发安卓服务器之 php封装json xml通用app数据通信接口
-
php过滤所有恶意字符(批量过滤post,get敏感数据)_PHP教程
-
php fsockopen模仿用户post数据_PHP教程
-
PHP数据集构建JSON及新数组介绍
-
PHP读取mssql json数据中文乱码的解决办法,
-
Codeigniter检测表单post数据的方法_php实例
-
用Json实现PHP与JavaScript间数据交换的方法详解_PHP
-
如何POST一个JSON格式的数据给Restful服务,jsonrestful_PHP教程