各位朋友,我今天在写一个程序,里面需要用到一个功能是,访问远程的一个页面,提取这个页面产生的cookie里面的一个字段的值,这个cookie值在在会话结束后就过期了,我想在它没过期之前把这个值post给另外一个远程的地址,我用的curl去访问这个获取cookie的页面,开启了curl的保存cookie的选项,但我非常的疑惑,怎么获得他保存的里面一个字段的值呢??我先curlcurl--get---提取cookie里面一个字----在post----curl释放求指导,谢谢大家了

解决方案 »

  1.   

    CURLOPT_COOKIEJAR 用于保存 cookie 到文件
    CURLOPT_COOKIEFILE 用于将保存的 cookie 文件发送出去
    CURLOPT_COOKIE 用于发送 cookie 变量所谓 在会话结束后就过期了 是因为浏览器不保存没有过期设定的 cookie 变量,所以关闭浏览器后再次请求时就没有 cookie 发送出去curl 处理中,如果是一次做完,只需 CURLOPT_COOKIEJAR 就可以
    若要分段处理则先 CURLOPT_COOKIEJAR,后 CURLOPT_COOKIEFILE
    发送 cookie 文件内容的段,不要 CURLOPT_COOKIEJAR。以避免新的 cookie 变量的影响
      

  2.   

    谢谢版主指点,原来是浏览器不保存没有过期设定的cookie,我想问下您CURLOPT_COOKIEJAR会把这个没有过期设定的cookies变量保存下来吗,CURLOPT_COOKIE可以发送,但现在我想以post的发送获取到的cookie变量完成一个验证,打扰了
      

  3.   

    可以,curl本身就可以当一个浏览器看待,只是不能渲染网页而已