-1

嗨,我在颤振中有以下问题。我发出一个 post http 请求,在浏览器中网站返回状态 302,重定向的位置在响应的标题中称为“位置”,到目前为止一切都很好。但是当我在颤动中发出请求时,响应状态为 301,并且我没有在标题中获得重定向链接

我只在“位置”标头中获取我发出请求的 url,而不是应该重定向到的新 url

这是我发出请求的代码的一部分

http.Request req = http.Request("Post", uri)..followRedirects = false;
 
req.body = 'criterio=3&valor=$codigo&nombre_apellidos=&op=Buscar&form_build_id=$idForm&form_id=tracking_form';
http.Client baseClient = http.Client();
http.StreamedResponse response = await baseClient.send(req);

print(response.statusCode);
print(response.headers);
4

1 回答 1

0

这是您的后端的问题,而不是 Flutter 或http软件包的问题。它不会更改 HTTP 响应代码或标头。

至于您的浏览器和您的代码之间响应不同的原因,您的请求是导致这种情况的原因。

也许您的请求正文格式不正确 - 它没有以非常健壮的方式形成。其中一个值中有一个与号?

否则,可能是请求标头不正确的问题。您的请求看起来像一个表单提交,但它应该包含一个描述正文格式的标题。

于 2021-11-15T11:33:20.073 回答