我正在尝试使用HTTPoison提交此表单
https://gist.github.com/shankardevy/6728d63eb528b3cb223a
使用以下代码:
HTTPoison.post!(url,{:multipart, [{"username", "user"}, {"password", "pass"}]})
但是,结果页面提供“无效身份验证”。但是当我尝试使用浏览器使用相同的凭据登录时,它可以工作。
所以我想知道我是否能看到HTTPoison的原始http请求,以便我可以将它与来自浏览器的原始请求进行比较。
如果您只是想查看请求,请访问 http://httpbin.org
?它回应了所要求的信息。
iex(1)> IO.puts HTTPoison.post!("http://httpbin.org/post",{:multipart, [{"username", "user"}, {"password", "pass"}]}).body
HTTPoison
使用 hackney
作为后端,我有使用的文件上传示例 hackney
在下面(尽管它与你的例子有些不同,我发布它作为你的参考,因为我以前努力寻找关于multipart的例子)。
https://github.com/parroty/excoveralls/blob/master/lib/excoveralls/poster.ex
是否有任何特殊原因使用multipart来发送用户/密码参数?
如果您只是想查看请求,请访问 http://httpbin.org
?它回应了所要求的信息。
iex(1)> IO.puts HTTPoison.post!("http://httpbin.org/post",{:multipart, [{"username", "user"}, {"password", "pass"}]}).body
HTTPoison
使用 hackney
作为后端,我有使用的文件上传示例 hackney
在下面(尽管它与你的例子有些不同,我发布它作为你的参考,因为我以前努力寻找关于multipart的例子)。
https://github.com/parroty/excoveralls/blob/master/lib/excoveralls/poster.ex
是否有任何特殊原因使用multipart来发送用户/密码参数?
你可以使用真棒 ngrok 用于为您的请求创建代理的工具,例如
$ ngrok example.com 8080
会吐出像这样的网址 http://abcd1234.ngrok.com 代理发送给example.com端口8080的任何请求。然后,您可以在ngrok的Web监控UI中检查原始请求, HTTP://本地主机:4040。不用说,您将把所有数据发送给第三方,因此不要提交任何您不想泄露的用户名和密码。