如何使用Chrome的扩展“Advanced Rest Client”测试REST API

时间:2013-12-15 06:10:17

标签: rest google-chrome-extension

按照以下链接的说明,我成功为我的Django应用程序构建了一个REST API:http://django-rest-framework.org/tutorial/quickstart

我可以通过在Unix提示符下执行以下操作来测试它:

curl -H 'Accept: application/json; indent=4' -u root:myPassword http://www.myWebsite.com/users/

有效:)

但是,我想使用Chrome扩展程序Advanced Rest Client来测试相同的功能。 我已经安装了扩展程序,但我不知道在哪里/如何放置字段。当我做出受过教育的猜测时(如截图中所示),它拒绝接受“未提供身份验证凭据”的说法

screenshot of failing request

我应该如何/在何处将参数指定给REST API?

8 个答案:

答案 0 :(得分:98)

可发现性令人沮丧,但Advanced Rest Client处理基本身份验证的方式非常巧妙。提到的亚伯拉罕的捷径对我来说并不起作用,但是有点蠢蠢欲动地揭示了它是如何做到的。

您需要做的第一件事是添加Authorization标头: menus

然后,当您关注value输入时,会弹出一个漂亮的小东西(请注意右下方的“构造”框): construct the auth value

点击它会弹出一个方框。如果你愿意,它甚至可以做OAuth! convenient inputs

多田!如果在单击“构造”时将值字段留空,则会向其添加Basic部分(我假设它也会添加必要的OAuth内容,但我没有尝试,因为我的当前需要用于基本身份验证),因此您无需执行任何操作。 fills in the field as needed

答案 1 :(得分:10)

从屏幕截图中我可以看到您想要将“user”和“password”值传递给服务。您已在请求标头部分中发送了错误的参数值。 值在请求正文中发送,而不是在请求标头中发送。 你的语法也错了。 正确的语法是:{"user":"user_val","password":"password_val"}. 还要检查内容类型是什么。它应与您为服务设置的内容类型相匹配。

答案 2 :(得分:7)

这似乎是一个非常古老的问题,但我提供了一个答案,以便它可以帮助其他人。 您可以在表单部分的第二个屏幕中指定变量,如下所示或在 通过附加第二张图像中显示的变量来生成RAW格式。

Specify Form Variables

Specify in RAW format

如果您的变量和变量值有效,您应该在响应部分看到成功的响应。

答案 3 :(得分:6)

通常用于基本身份验证的快捷方式格式为http://username:password@example.com/path。您还需要在请求中包含accept标头。

enter image description here

答案 4 :(得分:3)

标题部分中的

你必须写

授权:基本aG9sY67890vbGNpbQ ==

其中string之后的字符串是用户名:密码的64位编码值。 php获取标头值的示例是: echo“授权:基本”。 BASE64_ENCODE( “MYUSER:MYPASSWORD”);

n.b:我认为您的身份验证方法是基本的。也可以是不同的。

答案 5 :(得分:3)

添加授权标题,然后点击铅笔按钮输入用户名和密码

enter image description here

答案 6 :(得分:0)

解决此身份验证问题的简便方法是使用Fiddler窃取身份验证令牌。

步骤

  1. 启动提琴手和浏览器。
  2. 导航浏览器以打开Web应用程序(网站)并执行操作 要求的身份验证。
  3. 打开Fiddler并单击HTTP 200 HTML页面请求。 Capturing cookie value using Fiddler
  4. 在右侧窗格中,从请求标头中复制Cookie标头 参数值。 enter image description here
  5. 打开REST客户端,然后单击“标题表单”选项卡并提供 来自剪贴板的cookie值。
  6. 点击SEND按钮,它将获取结果。

答案 7 :(得分:0)

使用最新的ARC for GET请求需要添加身份验证 一个名为Authorization:authtoken的原始标题。

请找到屏幕截图Get request with authentication and query params

要添加查询参数,请单击URL框左侧的下拉箭头。