우편 배달부로 graphql 쿼리를 보내는 방법은 무엇입니까?


81

나는 사용한다

POST type
URL http://######/graphql
Body: 
query: "query: "{'noteTypes':  {'name', 'label', 'labelColor', 'groupName', 'groupLabel', 'imageUrl'}}"

그러나 "message"를 반환 합니다. "Must provide query string."

답변:


136

REST 클라이언트 불면증을 사용하는 더 좋은 방법이 있습니다.

문서는 여기에서 graphql 쿼리를 보내는 방법 : https://support.insomnia.rest/article/61-graphql


다음은 우편 배달원을위한 단계입니다.

1 단계.

Chrome에서 GraphiQL을 실행하고 Chrome Dev Console을 열고 Network 탭을 클릭 한 다음 graphiql에서 쿼리를 수행합니다. 쿼리를 수행하면 network 탭에 graphql 요청이 표시됩니다.

여기에 이미지 설명 입력

2 단계.

로부터 graphql요청이 요청 쿼리를 복사를 선택Copy as cURL (cmd)

여기에 이미지 설명 입력

3 단계.

Postman을 열고 왼쪽 상단에서 Import버튼 Import을 클릭 하고을 클릭 한 후을 클릭하고 Paste Raw Text복사 된 cURL요청을 2 단계에서 완료 한 후 붙여 넣습니다 .Import

여기에 이미지 설명 입력

4 단계.

Postman은 Graphql 요청을 보낼 준비가되었습니다. Send버튼을 클릭 하면 Response아래와 같이 본문의 응답 상자에 표시됩니다.

여기에 이미지 설명 입력

5 단계.

쿼리가 어떻게 전송되는지 확인하려면 Body옆 에있는 탭을 클릭 Headers하면 JSON 형식으로 우편 배달부의 필드를 제공하는 방법을 알 수 있습니다.

예 : edges {\n node {\n id\n jobId\n }\n, 다른 필드를 보려면 접미사를 사용하여 추가해야합니다.\n

필요한 name경우 :edges {\n node {\n id\n jobId\n name\n }\n

\n여기서는 새 줄을 나타내는 것입니다. 대신 아래와 같이 명확하고 예시적인 JSON을 제공하여 더 간단하게 만들 수 있습니다.

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

참고 : 본문 유형은application/json내용유형이있는 원시 여야합니다. 따라서 쿼리는 따옴표가있는 유효한 JSON이어야합니다.".."

{  
   "query":"{viewer {user {edges {node {id jobId name }}}}}"
}

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

여기에 이미지 설명 입력

step 5우편 배달부에서 요청하는 동안 필요한 본문 및 기타 항목으로 쿼리를 보내는 방법을 알고 있으면 직접 시작할 수 있습니다.

여기에 이미지 설명 입력

단순화 된 JSON 사용

여기에 이미지 설명 입력


1
놀랄 만한! 놀랄 만한!
ZPPP

정말 우체부가 graphql 유용하지 않습니다, 우리는 우편 배달부 스크린과 graphiql 필요
stackdave

당신의 hleep에 대한 최고, 감사합니다
zhulinpinyu

내가 얻는 것과 동일한 단계를 사용하는 동안 Curl : 2 옵션없는 인수를 가져 오는 동안 오류가 발생했습니다. 하나만 지원됨 (URL)
Ankit Gupta

2
Windows 10 OS에서 크롬 우편 배달부 앱을 사용하여 cURL (cmd)로 복사하는 대신 cURL (bash)로 복사
다른 코더

47

GraphQL 서버가 Content-type: application/graphql또는에 응답하는 경우 INSOMNIA가 필요하지 않습니다postman.setEnvironmentVariable .

그냥 해:

헤더 탭에서 : Content-Type: application/graphql

본문 탭에서 "원시"를 선택하고 쿼리를 입력합니다.

여기에 이미지 설명 입력


나는 이것을 시도하는 "No query string was present"를 얻습니다
dima

1
나를 위해 완벽하게 작동합니다! Express 및 express-graphql 종속성과 함께 Node.js 사용.
Brian


19

이를 수행하는 간단한 방법이 있습니다. 사전 요청 스크립트를 사용하여 페이로드를 문자열 화합니다 ( source ).

1 단계.

요청 본문에 페이로드에 대한 자리 표시자를 입력합니다.

{
    "query":{{query}}
}

2 단계.

사전 요청 스크립트에서 페이로드를 생성하고 환경 변수에 저장합니다.

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

그게 다야.


4
이것은 매력처럼 작동하며 이전 답변에서 설명한 모든 수동 단계의 번거 로움을 피할 수 있습니다! 감사합니다.
Alexis.Rolland 2018 년

이전 버전의 graphql을 사용하거나 특정 설정이 있어야하지만 마침내 위의 제안과 "query":> placeholder> {> "body": {{query}}> }
darul75

11

업데이트 2 :

POSTMAN은 실용적이지 않습니다. 왜냐하면 헤더를 추가하는 쉬운 방법으로 아직 작동하고 있고, 오랜 시간이 걸리고, POSTMAN은 graphql과 자연스럽게 작동하도록 만들어지지 않았다고 생각합니다.

여기에서 진행 상황을 확인할 수 있습니다 : https://github.com/postmanlabs/postman-app-support/issues/1669

다음과 같은 다른 패키지 플러그인을 사용하는 것이 좋습니다.

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

graphiql (헤더 추가 가능성 없음)의 경우 세 가지를 설정해야합니다 (입력하기 쉽지 않음).

  1. 머리글:

    콘텐츠 유형 : application / json

  2. 몸:

    Ray <옵션 그룹 선택

    JSON (application / json) 선택 <selectbox

  3. 그래프 쿼리의 "쿼리"및 "값"으로 자바 스크립트 개체를 작성합니다. js의 모든 객체와 마찬가지로 속성과 값이 필요합니다.이 경우 "quote"는 속성이고 값은 큰 따옴표로 묶어야합니다. 값 (그래프 문자열) 내에서 js 객체를 구성하지 않으므로 이중 따옴표를 사용할 필요가 없으며 문자열 일뿐입니다.

    { "query": "{allQuotes {text}}"}

    문제는 grapIql과는 달리 한 줄에 모두 입력해야한다는 것입니다.

여기에 이미지 설명 입력

여기에 이미지 설명 입력


11

업데이트 8-2019-이것이 오래되었다는 것을 알고 있지만 POSTMAN과 관련하여 아직 이해하지 못했다면 본문 게시를위한 graphql (베타) 옵션이 있습니다. 추가 헤더를 추가 할 필요가 없습니다.

여기에 이미지 설명 입력


9

Postman 은 버전 7.2에서 내장 GraphQL 지원 을 출시했습니다 .

이 버전은

  • 요청 본문의 GraphQL 쿼리를 POST 요청으로 보내기
  • GraphQL 변수 지원
  • GraphQL 스키마 유형을 사용하여 Postman에서 API 생성
  • 사용자 정의 GraphQL 스키마와 통합 된 쿼리 자동 완성

한 번 사용해보고 커뮤니티 포럼 의 추적 스레드에 대한 의견을 보내주세요.


8

을 사용 graphQl하여 쿼리 를 사용하려고 할 때 동일한 문제에 직면했습니다 POSTMAN. POSTMAN에서 유형이 있는 raw탭 에서 데이터를 보냅니다 json.

쿼리 명령 :

{"query":"{user(id:902){id,username,DOB}}"}

돌연변이 명령 :

{ "query": "mutation {createMutations(reviewer:36, comments:\"hello\",data_id: 1659, approved: true ){id}}" }

       #commnent: String Type
       #data_id:Int Type
       #approved:Boolean Type


3

Estevão Lucas의 대답 에서 파생되었습니다 .

Content-type: application/json우체부에서 헤더 를 사용할 수도 있습니다.

다음으로 본문을 정의하십시오.

{
    "query": "{ your_query }"
}

이것은 요청 페이로드를 형성하기 위해 클라이언트 측에서 쉽게 구성됩니다.

예 :

여기에 이미지 설명 입력

산출:

여기에 이미지 설명 입력



0

Checkout https://github.com/hasura/graphqurl-GraphQL 용 curl :

  • 자동 완성으로 GraphQL 쿼리를 만들기위한 CLI
  • 모든 엔드 포인트에 대해 로컬로 GraphiQL 실행 (사용자 지정 헤더 포함)
  • nodejs 또는 브라우저에서 라이브러리로 사용
  • 구독 지원

나는 저자 중 한 명입니다.

gq https://gentle-anchorage-72051.herokuapp.com/v1alpha1/graphql -i

헤더가있는 GraphiQL



-2

헤더를 추가하면 우체부에서 graphql 쿼리를 실행할 수 있습니다.

Content-type: application/graphql

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.