Heim > Backend-Entwicklung > PHP-Tutorial > 关于curl_setopt的问题----在线等

关于curl_setopt的问题----在线等

WBOY
Freigeben: 2016-06-23 14:16:57
Original
1074 Leute haben es durchsucht

 curl_setopt($ch, CURLOPT_POSTFIELDS, $postfield); //设置POST提交的字符串
1.其中这里的 CURLOPT_POSTFIELDS是保存在http的Header中还是哪里?
2.与网页中表单Form的Post方式有何区别?
我是做DELPHI的,然后IDHTTP控件模拟网页的POST方式,但与PHP的这个好像有点区别。
$postfield这里的只看到有指定值,没看到有指定NAME属性哎。


回复讨论(解决方案)

$postfield 是将表单所有的name和value按照键值对方式用&连接起来的字串

依据http协议,它不属于header,而是正文(与header部分理应有\r\n\r\n隔开)

$postfield 是将表单所有的name和value按照键值对方式用&连接起来的字串

依据http协议,它不属于header,而是正文(与header部分理应有\r\n\r\n隔开) POST方式的话是用换行隔开的吗?如果不指定他的NAME只有一个VALUE提交上去是啥结果呀?

合法的格式应该是 类似'para1=val1¶2=val2&...'或使用一个以字段名为键值,字段数据为值的数组

你只传value,那么目标页面就无法获取你提交的值咯。

无论什么方式,提交就是发送字串而已,一般post是由浏览器做这个事
curl只是模拟post,只是把一些参数组织起来发送,代替了浏览器
你两个delphi月排行第一,应该也做过socket吧,socket不就是把字串按照http规范拼接起来发送么?

我都说了是键值对,就必然有name了
name=abcdefg&password=123456...
只有value,结果就是服务端找不到所需要的变量?

无论什么方式,提交就是发送字串而已,一般post是由浏览器做这个事
curl只是模拟post,只是把一些参数组织起来发送,代替了浏览器
你两个delphi月排行第一,应该也做过socket吧,socket不就是把字串按照http规范拼接起来发送么?

我都说了是键值对,就必然有name了
name=abcdefg&password=123456...
只有value,结果就是服务端找不到所需要的变量? 谢谢两位,问题已解决!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage