在 Postman 中发布时出现 404 错误

Posted

技术标签:

【中文标题】在 Postman 中发布时出现 404 错误【英文标题】:404 error when post in Postman 【发布时间】:2018-08-04 19:22:31 【问题描述】:

我正在尝试发送一个包含联系人列表的 Person 对象的 POST 请求。 但我不知道这是否是发送列表的正确语法:

 
    "name":"romulo",
    "contacts" :  [ 
         
            "contact" : "3466577" 

        ,
             
            "contact" : "532423" 

            
        ]
    

但让我返回 404 错误

我做错了什么?

发布方式:

@PostMapping("/person")
public void addPerson(@Valid @RequestBody Person person) 
    Person savedPerson = personRepository.save(person);
    List<Contact> contacts = person.getContacts();
    for (Contact contact1 : contacts) 
        contactRepository.save(contact1);
    


【问题讨论】:

那么有没有关于这个 API 的文档,如果有,你检查了吗? 我认为它必须返回ResponseBody,当前方法什么也不返回,因此404错误是基本原理。 这是一个我正在尝试做的测试:联系人列表 创建一个 REST API 来存储人和他们的联系人。一个人可以有多个联系人,例如电话、电子邮件或whatsapp。 API 应该允许创建、更新、获取和删除人员和联系人。 我试图返回一个 Person 对象,但没有任何改变。我映射有什么问题? 我们需要有关您要拨打的地址的更多详细信息。找不到端点时 Spring 返回 404。 【参考方案1】:

当服务器无法找到与您的确切请求匹配的方法时,将返回 HTTP 404。

对于上述请求,url 为http://&lt;context&gt;/requestpath,请求方法为 POST。(http://localhost:8080/person)

检查请求正文,所有字段都应与 Person 对象完全匹配,否则它可能会返回 HTPP 400。

【讨论】:

您好,谢谢您的回答。正确的 url 是:localhost:8080/api/person,因为基本 url 映射 @RestController @RequestMapping("/api") 公共类 ContactController。我试图把所有的字段,但仍然没有工作:“personId”:1“name”:“romulo”,“contacts”:[“id”:1“contact”:“3466577”,“contact " : "532423" ] 【参考方案2】:

在我的情况下,这是一个简单的错误,花了一个小时才弄清楚我的网址末尾有空间。

【讨论】:

在我的情况下,我的端点 url 末尾有一个空格,我在 Postman 中删除了它:V

以上是关于在 Postman 中发布时出现 404 错误的主要内容,如果未能解决你的问题,请参考以下文章

更新在 iis 中发布的 Web 应用程序时出现 404 错误

POSTMAN 在调用 API 时出现内部服务器错误

在android中使用Asmack时出现404错误

在生产环境中使用 Rails 7 中的 importmaps 时出现 404 错误

Flask:当我尝试访问索引时出现错误 404

在 TextBlob 中使用翻译功能时出现“HTTPError:HTTP 错误 404:未找到”