我正在开发Laravel Web Service
。
当我尝试使用网络表单的POST
路由时,一切正常,但是当我尝试使用像Postman
这样的REST客户端时,它并没有得到我应该做出的响应。
它为我提供状态代码302
,并重定向到" /"。问题是什么?
答案 0 :(得分:2)
当您尝试通过Postman发出POST请求时,您需要添加_token字段及其用于保护XSS攻击的值。请参阅https://laravel.com/docs/5.2/routing#csrf-protection
答案 1 :(得分:1)
使用Postman访问端点时,请设置标题
Accept: application/json
或Laravel永远不会知道它是一个API客户端,因此重定向302消息。 它是最新Laravel版本的机制,因为它们在web.php路由器旁边提供了api.php路由器。
答案 2 :(得分:1)
对于具有相同问题的其他用户而言,这可能对上述解决方案无法解决:
确保实例<input type="text" name="document_name">
(document_name)的表单字段名称与模型中声明的规则字段的名称相匹配。
public static $rules = ['document_name' => 'required|string'];
它不会抛出任何错误,日志中没有任何错误,它只是重定向到表单,因此很难找到问题。
答案 3 :(得分:0)
在邮递员看来,您应该指出您发送的数据是&#39; x-www-url-formurlencoded&#39;
答案 4 :(得分:0)
Http状态代码302用于重定向。这可能是由于服务器端问题,请检查 laravel项目的错误日志文件或 apache的错误日志文件。