导航:首页 > 编程语言 > phppost提交json

phppost提交json

发布时间:2024-07-05 15:04:09

‘壹’ thinkphp后台发送的json,前台的js里怎么接收

如果你会用jquery,那我还可以帮到你。jquery里面有很多种ajax的方法,我举个简单的$.post方法,这是用ajax提交数据,提交数据的形式是post。
$.post('index.php','',function(data){
alert(data);

});
其中index.php是你后台发送json数据的php文件,function里面的data参数则是php文件返回的json数据,一般是echo 出来的json数据,第二个参数是用来传递参数给index.php的

‘贰’ php通过curl发送post json给https产生502错误问题!

curl_setopt(self::$ch,CURLOPT_USERAGENT,"Mozilla/5.0(Macintosh;IntelMacOSX10_10_2)AppleWebKit/600.3.18(KHTML,likeGecko)Version/8.0.3Safari/600.3.18");

加一个这个参数模拟浏览器,看看有没有作用

有些服务器非浏览器访问就会502

‘叁’ php镐庝箞銮峰彇杩灭▼JSon鍐呭 骞秔ost涓浜涘弬鏁

$data = file_get_contents($url);//鐩镄勯〉闱㈠唴瀹归傜矖銮峰彇
$t = json_decode($data,1);//杞鎹涓篜HP鏁扮粍
//澶勭悊...
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $urlo);//鏁版嵁鍦嗙ゥ鍙戦佸湴鍧
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $post_data);//姗樻ū鎼忓彂阃佺殑鏁版嵁鏁扮粍
curl_exec($ch);

‘肆’ 璇锋暀涓涓狿HP CURL镄凯OST鎻愪氦阆囧埌镄勯梾棰

缁欎綘涓涓镐濊矾,浣跨敤http浠f浛https,铹跺悗鎶揿寘,鐪嬩竴涓媓ttp璇锋眰鍒颁贡鎼搴曟湁浠涔堜笉钖.

鍙﹀,CURLOPT_SSL_VERIFYHOST瀹樻柟鏂囨。链夎存槑:

绂佺敤钖巆URL灏嗙粓姝浠庢湇锷$杩涜岄獙璇併备娇鐢–URLOPT_CAINFO阃夐”璁剧疆璇佷功浣跨敤CURLOPT_CAPATH阃夐”璁剧疆璇佷功鐩褰
濡傛灉CURLOPT_SSL_VERIFYPEER(榛樿ゅ间负2)琚钖鍝椾簭𨰾跨敤锛孋URLOPT_SSL_VERIFYHOST闇瑕佽璁剧疆鎴怲RUE钖﹀垯璁剧疆涓
FALSE銆

镓浠ラ栧厛浣犵殑CURLOPT_SSL_VERIFYPEER鏄璁剧疆涓篺alse镄,镓浠CURLOPT_SSL_VERIFYHOST涔熻佷负false

杩樻湁, 鎴戠湅璇锋眰璁よ瘉骞朵笉鏄浣跨敤http auth, 浣犱负浠涔堟坊锷焘url_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_BASIC);

链钖,瀹樻柟鏂囨。瀵逛簬CURLOPT_POSTFIELDS镄勮В閲

濡傛灉value鏄涓涓鏁扮粍锛孋ontent-Type澶村皢浼氲璁剧疆鎴恗ultipart/form-data

钥屾帴鍙f枃妗d腑鏄庣‘璇存槑

璇锋眰鎺ュ彛(寤鸿浣跨敤post璇锋眰锛屾敞镒忎笉瑕佷娇鐢╩ultipart-post)锛

镓浠ヤ綘鍙浠ュ皾璇

curl_setopt($ch,CURLOPT_POSTFIELDS, http_build_query($data));

链钖庣殑链钖,璇曡瘯涓嬮溃镄勪唬镰:

<?php
header('Content-Type:text/html;charset=utf-8');
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://sendcloud.sohu.com/webapi/list.create.json');
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
curl_setopt($ch, CURLOPT_AUTOREFERER, 1);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$data = array(
'api_user' => '*',
'api_key' => '*',
'address' => '[email protected]',
'name' => 'Abao鏂板缓镄勬祴璇曢偖浠跺垪琛',
'description' => '杩欐槸Abao鏂板缓镄勭┖琛娴嬭瘯闾浠跺垪琛',
);
curl_setopt($ch,CURLOPT_POSTFIELDS, http_build_query($data));
if(false === $result=curl_exec($ch)) {
echo 'false:<br />';
}
var_mp(json_decode($result,true));
curl_close($ch);

‘伍’ 如何用php调用外部接口json数据

两种比较简单的方法:

1、使用curl

$url="http://www.xxxxxxxxxx.com/";
$ch=curl_init();
curl_setopt($ch,CURLOPT_URL,$url);
curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);
curl_setopt($ch,CURLOPT_TIMEOUT,30);
$output=curl_exec($ch);
curl_close($ch);

echo$output;

2、使用file_get_contents

$output=file_get_contents($url);
echo$output;


3 、使用socket 也是可以的

‘陆’ 如何用php调用外部接口json数据

一般使用php发送请求,获取返回的数据,进行解析;
<?php
$url="接口地址";
//发送请求获取返回值,file_get_contents只支持get请求,post使用curl
$json = file_get_contents($url);
//把json数据转化成数组
$data = json_decode($json,true);
//打印看看
print_r($data);
?>

‘柒’ PHP使用POST传递json数据的接收与处理问题

前端传给服务器的只是json 格式的字符串,使用json_decode,
mixed json_decode ( string $json [, bool $assoc ] )

var_mp(json_decode($json));
var_mp(json_decode($json, true));
如果不带参数,则返回为对象
带上true时,返回数组

foreach($ARR as $k=>$v){
echo 'key='.$k.';value='.$v;
}
单独处理每个key 和对应的value就好

‘捌’ php如何发送和接收JSON数据

对于json,PHP有对应的方法进行操作。

一般而言,json会以字符串形式传给PHP脚本,一般都是放在$_POST里面,

14

<?php
// 接收
$json_parameter = $_POST['json_str'];

// 处理, 变成数组
$array = json_decode($json_parameter);

// PHP 把数组数据变成json格式字符串,发给页面
$demo = array(
'key' => 'value',
'key2' => 'value2'
);
$demo_json = json_encode($demo); // 格式是{"key":"value","key2":"value2"}
echo $demo_json;

‘玖’ PHP如何通过Post请求发送Json数据

首先要把数据转换成json格式,再通过curl方法调用接口并传参数

代码如下:

$keyword=urlencode($_POST['keyword']);
$parameters=json_encode(array('keyWord'=>$keyword,'areaCode'=>'*'));
$post_data['appToken']="323ds7674354fds32fdsda60173";//随便写的
$post_data['parameters']=$parameters;
$url='http://serde.com/compadddvd/index';//随便写的
$ch=curl_init();
curl_setopt($ch,CURLOPT_POST,1);
curl_setopt($ch,CURLOPT_URL,$url);
curl_setopt($ch,CURLOPT_POSTFIELDS,$post_data);//用post方法传送参数
curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);
$response=curl_exec($ch);
curl_close($ch);

之后就返回数据即可。

‘拾’ 后端php那里接收到前端post给的json为什么会是转义字符串格式

1,有可能框架对整个参数,进行了转义,反转义一遍即可

2,有可能开启了PHP的自动过滤功能,在php.ini中关闭即可

magic_quotes_gpc=On改为magic_quotes_gpc=Off
阅读全文

与phppost提交json相关的资料

热点内容
linuxlvs负载均衡 浏览:611
欧姆龙nb屏编程教程 浏览:876
服务器硬盘损坏怎么清除数据 浏览:69
压缩机发热不制冷原因 浏览:258
简述c编译的基本方法 浏览:568
php获取header信息 浏览:110
python斜杠的转义字符 浏览:664
安卓11安装包解析错误怎么办 浏览:307
tls摘要算法 浏览:108
我的世界服务器怎么一直崩 浏览:211
畅捷通t1支持云服务器吗 浏览:392
ilspy反编译源码怎么设置 浏览:293
加密方式wep 浏览:59
两片单片机怎么串行 浏览:35
php电商模板下载 浏览:143
树莓派导航包编译 浏览:713
python查看默认编码 浏览:764
可以合并的pdf 浏览:44
程序员采用什么语言 浏览:917
云教会app怎么收费 浏览:855