我想在我正在工作的web应用程序中测试一些url。为此,我想手动创建HTTP POST请求(这意味着我可以添加任何我喜欢的参数)。
Chrome和/或Firefox中是否有我遗漏的功能?
我想在我正在工作的web应用程序中测试一些url。为此,我想手动创建HTTP POST请求(这意味着我可以添加任何我喜欢的参数)。
Chrome和/或Firefox中是否有我遗漏的功能?
当前回答
这是Chrome的高级REST客户端扩展。
它对我来说工作得很好——请记住,您仍然可以使用它的调试器。Network窗格特别有用;它会给你呈现JSON对象和错误页面。
其他回答
CURL非常棒,可以做任何您想做的事情!这是一个简单但有效的命令行工具。
REST实现测试命令:
curl -i -X GET http://rest-api.io/items
curl -i -X GET http://rest-api.io/items/5069b47aa892630aae059584
curl -i -X DELETE http://rest-api.io/items/5069b47aa892630aae059584
curl -i -X POST -H 'Content-Type: application/json' -d '{"name": "New item", "year": "2009"}' http://rest-api.io/items
curl -i -X PUT -H 'Content-Type: application/json' -d '{"name": "Updated item", "year": "2010"}' http://rest-api.io/items/5069b47aa892630aae059584
我认为Benny Neugebauer对OP问题的评论关于Fetch API应该在这里作为一个答案,因为OP正在Chrome中寻找手动创建HTTP POST请求的功能,这正是Fetch命令所做的。
这里有一个Fetch API的简单例子:
// Make sure you run it from the domain 'https://jsonplaceholder.typicode.com/'. (cross-origin-policy)
fetch('https://jsonplaceholder.typicode.com/posts',{method: 'POST', headers: {'test': 'TestPost'} })
.then(response => response.json())
.then(json => console.log(json))
fetch命令的一些优点是非常宝贵的: 它简单,简短,快速,可用,甚至作为一个控制台命令,它存储在你的chrome控制台,可以稍后使用。
简单的按F12,在控制台选项卡中写入命令(或者按上键,如果你之前使用过),然后按Enter,看到它挂起并返回响应,这使得它对于简单的POST请求测试非常有用。
当然,这里的主要缺点是,与Postman不同,它不会通过跨源策略,但我仍然发现它对于在本地环境或其他可以手动启用CORS的环境中进行测试非常有用。
Windows命令行解决方案
在PowerShell中,您可以使用Invoke-WebRequest。示例语法:
Invoke-WebRequest -Uri http://localhost:3000 -Method POST -Body @{ username='clever_name', password='hunter2' } -UseBasicParsing
在没有Internet Explorer的系统上,您需要-UseBasicParsing标志。
它可能与浏览器没有直接关系,但Fiddler是另一个很好的软件。
对于Firefox,也有一个叫RESTClient的扩展,非常不错:
RESTClient,用于rest式web服务的调试器