首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Adonis.js api删除路由不工作

Adonis.js api删除路由不工作
EN

Stack Overflow用户
提问于 2021-02-13 14:00:11
回答 2查看 822关注 0票数 0

我试着选择一条特定的路线:

代码语言:javascript
复制
http://127.0.0.1:3333/store/products?productId=4

但是服务器给了我这个错误:

代码语言:javascript
复制
"message": "E_ROUTE_NOT_FOUND: Cannot DELETE:/store/products",

"stack": "HttpException: E_ROUTE_NOT_FOUND: Cannot PATCH:/store/products\n   
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2021-02-13 15:52:00

route ,你没有按正确的url,你的是错的。

route.js的右url是:

代码语言:javascript
复制
http://127.0.0.1:3333/store/products/4
                                     ^- Product id

route

代码语言:javascript
复制
Route.delete('/products/:productId', 'ProductsController.delete')
//                      ^- use : for url parameter

路由解释

身体数据url参数完全不同。

请阅读:URL参数和查询字符串之间有什么区别?

身体数据

请求体(json)

文档:https://preview.adonisjs.com/guides/http/form-submissions#reading-form-data

示例url :

代码语言:javascript
复制
http://127.0.0.1:3333/products?name=hello

路由示例:

代码语言:javascript
复制
Route.post('/products', 'MyController.myFunction')

控制器:

代码语言:javascript
复制
public async myFunction ({ request }: HttpContextContract) {
  const data = request.only(['name'])
  // ...
}

Url参数

指定动态url参数。

文档:https://preview.adonisjs.com/guides/http/routing#dynamic-urls

示例url :

代码语言:javascript
复制
http://127.0.0.1:3333/products/1

路由示例:

代码语言:javascript
复制
Route.post('/products/:id', 'MyController.myFunction')

控制器:

代码语言:javascript
复制
public async myFunction ({ params }: HttpContextContract) {
  const id = params.id
  // ...
}
票数 0
EN

Stack Overflow用户

发布于 2021-02-13 17:02:43

除了@crbast提出的要点:您的代码似乎碰到了HTTP修补程序方法(https://developer.mozilla.org/en-US/docs/Web/HTTP/Methods/PATCH),而不是您期望的HTTP

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66185935

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档