我正在尝试复制
curl -c cookie_jar -H "Content-Type: application/json" -d '{"username" : "admin", "password" : "admin"}' http://jira:8080/rest/auth/latest/session
在PHP中,但我似乎无法让它工作。
我有
curl_setopt($curl,CURLOPT_URL, $loginUrl );
curl_setopt($curl,CURLOPT_POST, true );
curl_setopt($curl,CURLOPT_POSTFIELDS, '{"username" : "admin", "password" : "admin"}');
curl_setopt($curl,CURLOPT_COOKIEJAR, '/tmp/cookiejar' );
curl_setopt($curl, CURLOPT_HTTPHEADERS,array('Content-Type: application/json'));
curl_exec( $curl );
任何帮助?
答案 0 :(得分:1)
实际上,您确实需要CURLOPT_COOKIEFILE选项。 COOKIEJAR物种在哪里写新饼干。 COOKIEFILE用于将现有cookie加载到CURL中。你的PHP等价物现在不发送任何cookie - 它只记录它们。加上这个,你应该好好去:
curl_setopt($curl,CURLOPT_COOKIEFILE, '/tmp/cookiejar' );
^^^^---the big difference.