请求来自邮递员,但不是来自cURL

时间:2017-07-03 15:20:46

标签: curl postman

我有一个非常简单的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请求正常工作?

2 个答案:

答案 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。