Cookies 在HTTPoison(Elixir)中设置域cookie
好的,我在Elixir中的新问题是,我不能在创建cookie时设置显式域 在这种情况下:Cookies 在HTTPoison(Elixir)中设置域cookie,cookies,elixir,Cookies,Elixir,好的,我在Elixir中的新问题是,我不能在创建cookie时设置显式域 在这种情况下: HTTPoison.get("httpbin.org/cookies", [{"User-agent", @userAgent}], hackney: [ cookie: "cookie1=1 cookie2=2"] ) do 当我创建一个cookie时,它将存储一个类似于.httpbin.org的域,但出于虚拟原因,我需要设置类似于httpbin.org的域值(没有前面
HTTPoison.get("httpbin.org/cookies", [{"User-agent", @userAgent}], hackney: [
cookie: "cookie1=1 cookie2=2"] ) do
当我创建一个cookie时,它将存储一个类似于.httpbin.org的域,但出于虚拟原因,我需要设置类似于httpbin.org的域值(没有前面的点)
我也尝试过:
HTTPoison.get("httpbin.org/cookies", [{"User-agent", @userAgent}], hackney: [
cookie: "cookie1=1 domain=httpbin.org cookie2=2"] ) do
但当然,语法要求域作为cookie名称,httpbin.org作为cookie值
谢谢大家! 您想在开始时删除圆点的原因是什么?它是可选的,并且应该匹配整个域(带/不带点) 另外,我认为
domain
属性将用于从HTTP服务器返回的setcookie
头,而不是从客户端请求。httpbin()返回setcookie
头,但它没有指定域属性(仅路径=/)。像浏览器这样的客户端将把它作为.httpbin.org
iex(25)> response = HTTPoison.get!("https://httpbin.org/cookies/set?k2=v2&k1=v1")
%HTTPoison.Response{body: "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 3.2 Final//EN\">\n<title>Redirecting...</title>\n<h1>Redirecting...</h1>\n<p>You should be redirected automatically to target URL: <a href=\"/cookies\">/cookies</a>. If not click the link.",
headers: [{"Server", "nginx"}, {"Date", "Fri, 18 Dec 2015 23:49:46 GMT"},
{"Content-Type", "text/html; charset=utf-8"}, {"Content-Length", "223"},
{"Connection", "keep-alive"}, {"Location", "/cookies"},
{"Set-Cookie", "k2=v2; Path=/"}, {"Set-Cookie", "k1=v1; Path=/"},
{"Access-Control-Allow-Origin", "*"},
{"Access-Control-Allow-Credentials", "true"}], status_code: 302}
iex(26)> :hackney.cookies(response.headers)
[{"k1", [{"k1", "v1"}, {"Path", "/"}]}, {"k2", [{"k2", "v2"}, {"Path", "/"}]}]
iex(25)>response=HTTPoison.get!("https://httpbin.org/cookies/set?k2=v2&k1=v1")
%HTTPoison.Response{body:“\n重定向…\n重定向…\n您应该自动重定向到目标URL:。如果没有,请单击链接。”,
标题:[{“服务器”,“nginx”},{“日期”,“Fri,2015年12月18日23:49:46 GMT”},
{“Content-Type”,“text/html;charset=utf-8”},{“Content-Length”,“223”},
{“连接”、“保持活动状态”}、{“位置”、“/cookies”},
{“Set Cookie”,“k2=v2;Path=/”},{“Set Cookie”,“k1=v1;Path=/”},
{“访问控制允许来源”,“*”},
{“访问控制允许凭据”,“true”}],状态代码:302}
iex(26)>:hackney.cookies(response.headers)
[{“k1”、[{“k1”、“v1”}、{“路径”、“/”}、{“k2”、[{“k2”、“v2”}、{“路径”、“/”}]}]
对不起,我没抓住要点