我有一个非常简单的Postman请求,在Postman中运行得很好。这只是对以下网址的GET请求:
http://www.toysrus.com/storefrontsearch/stores.jsp?skuId=24654884&quantity=1&postalCode=48103&latitude&longitude&productId=107531766&startIndexForPagination=0&searchRadius=0&pageType=product&ispu_or_sts=null&displayAllStoresFlag=false&displayAllStoreLink=false
如果我要求Postman为我提出cURL请求,它会给我这个:
curl -X GET \
'http://www.toysrus.com/storefrontsearch/stores.jsp?skuId=24654884&quantity=1&postalCode=48103&latitude=&longitude=&productId=107531766&startIndexForPagination=0&searchRadius=0&pageType=product&ispu_or_sts=null&displayAllStoresFlag=false&displayAllStoreLink=false' \
-H 'cache-control: no-cache' \
-H 'postman-token: b4ae79c0-c3f0-8247-8c2f-306c43376039'
结果是它永远挂起,永远不会给我回复。
知道如何才能使cURL请求正常工作?
答案 0 :(得分:3)
服务器似乎已禁止使用curl用户代理,还需要设置cookie troute=t1
,否则返回404:
curl -L -H 'User-Agent: Mozilla' \
-H 'Cookie: troute=t1;' \
'http://www.toysrus.com/storefrontsearch/stores.jsp?skuId=24654884&quantity=1&postalCode=48103&latitude&longitude&productId=107531766&startIndexForPagination=0&searchRadius=0&pageType=product&ispu_or_sts=null&displayAllStoresFlag=false&displayAllStoreLink=false' --compressed
答案 1 :(得分:0)
当心cookie怪物
并非所有邮递员的请求都相等。
邮递员将存储Cookie whether you like it or not(并在随后的调用中将其发送到同一域)。
我没有意识到我对同一个域的第一个电话收到的cookie是在邮递员的下一个电话中发回的。因此,即使一切看起来都一样,我也没有通过curl发送cookie。