如何通过邮递员发送graphql查询?

如何通过邮递员发送graphql查询?,graphql,postman,Graphql,Postman,我用 但它又回来了 “消息”:“必须提供查询字符串。” 有一种更好的方法可以使用REST客户机实现 这里有文档,如何发送graphql查询: 以下是邮递员的步骤 第1步。 在Chrome中运行GraphiQL,打开Chrome开发控制台,单击网络选项卡,并从GraphiQL进行查询,进行查询时,网络选项卡将显示graphql请求 第2步。 从图形ql请求复制请求查询,选择复制为cURL(cmd) 第3步。 打开Postman,在左上角单击导入按钮,单击导入按钮后,您必须单击粘贴原始文本,并

我用

但它又回来了 “消息”:“必须提供查询字符串。”


有一种更好的方法可以使用REST客户机实现

这里有文档,如何发送graphql查询:


以下是邮递员的步骤

第1步。

在Chrome中运行GraphiQL,打开Chrome开发控制台,单击网络选项卡,并从GraphiQL进行查询,进行查询时,网络选项卡将显示graphql请求

第2步。

图形ql
请求复制请求查询,选择
复制为cURL(cmd)

第3步。

打开Postman,在左上角单击导入按钮,单击导入按钮后,您必须单击粘贴原始文本,并按照步骤2中的操作粘贴复制的卷曲请求。完成后,单击导入按钮

第4步。

邮递员已准备好发送Graphql请求,只需单击
发送
按钮,您将在正文中的响应框中看到
响应
,如下所示

第5步。

要查看查询是如何发送的,请单击
标题
旁边的
正文
选项卡,您将了解如何以JSON格式提供来自postman的字段

e、 g:
edges{\n node{\n id\n jobId\n}\n
,如果要查看另一个字段,则需要将其添加到后缀
\n

比如如果需要
name
then:
edges{\n node{\n id\n jobId\n name\n}\n

\n
这里的意思只是表示一个新行。相反,您可以通过提供一个清晰、说明性的JSON来简化它,如下所示

============================================================================================================================

注意:主体类型必须是原始的
应用程序/json
内容类型。因此,查询必须是带引号的有效json
。“

============================================================================================================================

如果您知道如何在向邮递员发出请求时以正文形式发送查询以及其他需要的内容,则可以直接从
步骤5开始

使用简化的JSON

更新2: 这不是实用的邮递员,因为他们正在以一种简单的方式添加标题,这需要很长时间,而且我认为邮递员不是天生就可以使用graphql的

您可以在此处了解这方面的进展:

我建议使用其他软件包插件,如:

{  
   "query":"{viewer {user {edges {node {id jobId name }}}}}"
}
对于graphiql(无添加标题的可能性),您需要设置三件事(键入并不容易):

  • 标题:

    内容类型:application/json

  • 正文:

    选择光线 选择JSON(应用程序/JSON)
  • 使用图形查询的“query”和“value”组合javascript对象。与js中的所有对象一样,它需要属性和值,在本例中,“quote”是属性,值必须使用双引号。在值(graphl字符串)中,您不组合js对象,因此不需要使用双引号,它只是一个字符串

    {“查询”:“{allQuotes{text}}”

    问题是您需要在一行中键入all,而不像grapIql……postman github中有post要求,因此使用graphql很容易:


  • 为搜索该主题的任何人添加此功能……您可以更好、更轻松地利用和测试GraphQL调用:


    这对于GraphQL开发来说是非常棒的。

    有一种简单的方法可以做到这一点。使用预请求脚本来字符串化负载()

    第1步。

    在请求主体中为有效负载放置一个占位符

    the best (like postman , but profile and sync price 5$ monthly):
       https://insomnia.rest/
    others:
       https://github.com/andev-software/graphql-ide
       https://github.com/imolorhe
    
    第2步。

    在预请求脚本中创建负载,并将其存储在环境变量中

    {
        "query":{{query}}
    }
    

    就是这样。

    如果GraphQL服务器响应
    内容类型:application/GraphQL
    postman.setEnvironmentVariable
    ,则不需要失眠

    就这么做吧:

    在“标题”选项卡中:
    
    内容类型:应用程序/graphql
    

    在Body选项卡中,选中“raw”,将查询放入


    当我尝试使用
    graphQl
    查询
    POSTMAN
    时,我遇到了同样的问题, 在POSTMAN中,使用
    json
    类型从
    raw
    选项卡发送数据

    查询命令:

    postman.setEnvironmentVariable("query", JSON.stringify(
    `
    {
      search(query: "test", type: ISSUE, first: 10) {
        issueCount
        edges {
          node {
            ... on Issue {
              title
              id
              state
              closed
              repository {
                name
              }
            }
          }
        }
      }
    }
    `
    ));
    
    {"query":"{user(id:902){id,username,DOB}}"}
    
    命令:

    postman.setEnvironmentVariable("query", JSON.stringify(
    `
    {
      search(query: "test", type: ISSUE, first: 10) {
        issueCount
        edges {
          node {
            ... on Issue {
              title
              id
              state
              closed
              repository {
                name
              }
            }
          }
        }
      }
    }
    `
    ));
    
    {"query":"{user(id:902){id,username,DOB}}"}
    
    签出-GraphQL的卷曲:

    • 用于使用autocomplete进行GraphQL查询的CLI
    • 对任何端点(使用自定义头)本地运行GraphiQL
    • 与NodeJ一起使用或从浏览器中使用
    • 支持订阅
    我是作者之一

    { "query": "mutation {createMutations(reviewer:36, comments:\"hello\",data_id: 1659, approved: true ){id}}" }
    
           #commnent: String Type
           #data_id:Int Type
           #approved:Boolean Type
    
    源于

    您还可以在postman上使用header
    Content-type:application/json

    并用以下内容定义主体:

    gq https://gentle-anchorage-72051.herokuapp.com/v1alpha1/graphql -i
    
    这很容易在客户端构建,以形成请求负载

    e、 g

    输出:

    postman.setEnvironmentVariable("query", JSON.stringify(
    `
    {
      search(query: "test", type: ISSUE, first: 10) {
        issueCount
        edges {
          node {
            ... on Issue {
              title
              id
              state
              closed
              repository {
                name
              }
            }
          }
        }
      }
    }
    `
    ));
    
    {"query":"{user(id:902){id,username,DOB}}"}
    

    如果您使用的是Visual Studio,我已经编写了一个将GraphQL转换为Restful body的插件


    如果我们可以传递头类型,那么添加头内容类型:application/graphql

    以下链接可作为参考:

    邮递员刚刚在7.2版中发布

    此版本支持

    • 将请求正文中的GraphQL查询作为POST请求发送
    • 对GraphQL变量的支持
    • 在具有GraphQL架构类型的Postman中创建API
    • 与用户定义的GraphQL模式集成的查询自动完成
    请尝试一下,并向我们提供您对上的跟踪线程的反馈