proxy – 为什么squid从curl中拒绝这个多部分表单数据POST?

前端之家收集整理的这篇文章主要介绍了proxy – 为什么squid从curl中拒绝这个多部分表单数据POST?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
这失败了:
$curl --trace multipart-fail.log -F "source={}" http://127.0.0.1:3003/jslint

有一个squid状态417错误,ERR_INVALID_REQ.

> trace of failing curl request
> trace of successful curl request使用urlencoding(curl -d)而不是multipart(curl -F)
> formatted version of squid’s error message

我从来没有在实践中通过网络浏览器,所以它可能是卷曲使用而不是鱿鱼,但如果我告诉curl不使用squid代理,另一端的Web应用程序接受它就好了.

(如果有更合适的StackExchange网站,请告诉我.)

解决方法

Squid不支持Expect:100-continue,是一个HTTP / 1.0设备.请注意响应状态代码417 Expectation Failed.

Curl应该自动重试请求,但它不会;相反,你需要抑制Expect标头;例如.,

curl -H "Expect:" --trace multipart-fail.log -F "source={}" http://127.0.0.1:3003/jslint

猜你在找的Linux相关文章