나는 사용한다
POST type
URL http://######/graphql
Body:
query: "query: "{'noteTypes': {'name', 'label', 'labelColor', 'groupName', 'groupLabel', 'imageUrl'}}"
그러나 "message"를 반환 합니다. "Must provide query string."
답변:
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 사용
주제를 검색하는 모든 사람을 위해 이것을 추가하면 ... Insomnia를 사용하여 GraphQL 호출을 훨씬 더 쉽고 쉽게 활용하고 테스트 할 수 있습니다.
GraphQL 개발에 환상적이었습니다.
이를 수행하는 간단한 방법이 있습니다. 사전 요청 스크립트를 사용하여 페이로드를 문자열 화합니다 ( 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
}
}
}
}
}
}
`
));
그게 다야.
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 (헤더 추가 가능성 없음)의 경우 세 가지를 설정해야합니다 (입력하기 쉽지 않음).
머리글:
콘텐츠 유형 : application / json
몸:
Ray <옵션 그룹 선택
JSON (application / json) 선택 <selectbox
그래프 쿼리의 "쿼리"및 "값"으로 자바 스크립트 개체를 작성합니다. js의 모든 객체와 마찬가지로 속성과 값이 필요합니다.이 경우 "quote"는 속성이고 값은 큰 따옴표로 묶어야합니다. 값 (그래프 문자열) 내에서 js 객체를 구성하지 않으므로 이중 따옴표를 사용할 필요가 없으며 문자열 일뿐입니다.
{ "query": "{allQuotes {text}}"}
문제는 grapIql과는 달리 한 줄에 모두 입력해야한다는 것입니다.
Postman 은 버전 7.2에서 내장 GraphQL 지원 을 출시했습니다 .
이 버전은
- 요청 본문의 GraphQL 쿼리를 POST 요청으로 보내기
- GraphQL 변수 지원
- GraphQL 스키마 유형을 사용하여 Postman에서 API 생성
- 사용자 정의 GraphQL 스키마와 통합 된 쿼리 자동 완성
을 사용 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
Visual Studio를 사용하는 경우 GraphQL을 Restful body로 변환하는 플러그인을 작성했습니다.
https://marketplace.visualstudio.com/items?itemName=orasik.graphql-to-rest-queries
Estevão Lucas의 대답 에서 파생되었습니다 .
Content-type: application/json
우체부에서 헤더 를 사용할 수도 있습니다.
다음으로 본문을 정의하십시오.
{
"query": "{ your_query }"
}
이것은 요청 페이로드를 형성하기 위해 클라이언트 측에서 쉽게 구성됩니다.
예 :
산출:
Postman은 최근 GraphQL에 대한 기본 지원을 시작했습니다. https://blog.getpostman.com/2019/06/18/postman-v7-2-supports-graphql/
다음은 GraphQL을 로컬에서 테스트하는 스크린 샷입니다.
참고 : spring-boot https://www.baeldung.com/spring-graphql을 사용하여 로컬에서 GraphQL 실행
Checkout https://github.com/hasura/graphqurl-GraphQL 용 curl :
나는 저자 중 한 명입니다.
gq https://gentle-anchorage-72051.herokuapp.com/v1alpha1/graphql -i