【问题标题】:Replacing AJAX with cURL in php在php中用cURL替换AJAX
【发布时间】:2012-05-09 04:41:50
【问题描述】:

我有一些简单的情况,但对我来说,目前看起来很艰难。

我正在尝试废弃一个使用 AJAX 调用来获取数据的网络。

http://www.economia-nmx.gob.mx/normasmx/index.nmx

有一个表格,在检查适当的选项后,然后按submit 按钮。发送一个 ajax 调用,作为响应,数据打印在页面上。没有 JSON 参与其中。

使用 firebug 和 web 开发工具,我可以看到引用 URL、参数和 cookie 以及其他涉及的东西,Firebug 中的请求标头看起来像

Accept  text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Encoding gzip, deflate
Accept-Language en-us,en;q=0.5
Connection  keep-alive
Cookie  JSESSIONID=cYJtPcYGYs2dM12QXgD3vGfnnQFVX3cTzfFbYLwWBkmXv4m47jh1!924382716
Host    www.economia-nmx.gob.mx
Referer http://www.economia-nmx.gob.mx/normasmx/index.nmx
User-Agent  Mozilla/5.0 (Windows NT 5.1; rv:11.0) Gecko/20100101 Firefox/11.0
consultasvarias.nmx http://www.economia-nmx.gob.mx/normasmx/consulta.nmx

有人可以告诉我,我如何 CURL 页面(在 php 中)?

我必须以 CURl 发送哪些数据?

或者我必须生成完整的请求标头?

我必须为此设置哪些 CURL 选项?

请指导我,感谢您的帮助..

【问题讨论】:

    标签: php javascript ajax curl http-headers


    【解决方案1】:

    您应该尝试模仿 ajaxrequest。

    你可以模仿的参数:

    $data = array('name' => 'Foo', 'id'=>'Bar'); 
    curl_setopt($ch, CURLOPT_URL, 'http://localhost/upload.php');
    curl_setopt($ch, CURLOPT_POST, 1);
    curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
    

    您可以先查看phpmanual on curl

    【讨论】:

    • 你能用一些简单的话解释一下“模仿”吗?
    • 对于模仿,我的意思是您在请求中包含与 ajaxrequest 相同的参数。
    猜你喜欢
    • 2013-08-09
    • 1970-01-01
    • 2014-11-25
    • 2017-12-25
    • 2012-08-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-10-26
    相关资源
    最近更新 更多