我正在使用 PHP/CURL 并希望通过设置下面的 postfields 数组将 POST 数据发送到我的 phantomjs 脚本:
$ch = curl_init();
curl_setopt($ch, CURLOPT_COOKIEJAR, $cookieFile);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, TRUE);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.0)");
curl_setopt($ch, CURLOPT_POST, TRUE);
curl_setopt($ch, CURLOPT_POSTFIELDS, $postFieldArray);
curl_setopt($ch, CURLOPT_URL, $url);
$output = curl_exec($ch);
问题是我不知道如何在 phantomjs 脚本中解析 POST 请求。我正在使用 webserver 模块来公开脚本。
我怀疑https://github.com/benfoxall/phantomjs-webserver-example/blob/master/server.js可能有答案,但我不知道足够的 javascript 来判断是否正在解析 post 变量:
var service = server.listen(port, function(request, response) {
if(request.method == 'POST' && request.post.url){
var url = request.post.url;
request_page(url, function(properties, imageuri){
response.statusCode = 200;
response.write(JSON.stringify(properties));
response.write("\n");
response.write(imageuri);
response.close();
})
有人可以告诉我如何在这里解析 POST 请求吗?