我正在使用 lumen api 5.6。这是我的路线 $router->PUT('collections/{collectionId}' 在邮递员中,我像这样调用这个 api。
在这里看到我在这里有 CollectioPoints 但它在验证中失败。通过 formdata 发送的数据无法在验证中识别。
但是,如果我将路由从 put 发送到 post [$router->POST('collections/{collectionId}'],则通过表单数据发送的所有数据都会被识别,并且我会得到如下正确响应

为什么会发生这种情况。我不能通过放置请求发送表单数据吗?谢谢你。
小智 14
Laravel(Lumen) 会作弊,因为 html 表单只支持 GET 和 POST,但它确实理解真正的 PUT/PATCH 请求。
在 Postman 中,您应该发送 POST 并将 _method 设置为 PUT(与发送表单相同)以使您的数据和文件可见
_method = "PUT"
Run Code Online (Sandbox Code Playgroud)
或者
如果您没有任何文件只有数据,那么您可以在 Postman 中选择下面的选项中写入您的参数
x-www-form-urlencode
Run Code Online (Sandbox Code Playgroud)
或者
您想使用 PUT 方法使用form-Data选项发送数据, 您应该使用这样的东西https://gist.github.com/devmycloud/df28012101fbc55d8de1737762b70348
小智 7
例子
标头:Content-Type application/x-www-form-urlencoded
_方法=“放置”
你的控制器
return $request->file('avatar');
Run Code Online (Sandbox Code Playgroud)
图像示例
| 归档时间: |
|
| 查看次数: |
10287 次 |
| 最近记录: |