Apollo-link-rest: Kämpfe mit Pfadparametern

Erstellt am 18. Juni 2018  ·  4Kommentare  ·  Quelle: apollographql/apollo-link-rest

Ich versuche params zu params Argumente wie passiere diese :

query{
    tumblrPosts @rest(type: "TumblrPosts", path: "/posts", params: {api_key: $api_key, tag: $tag}) {
        response {
            posts {
                title,
                summary,
                body,
                type,
                post_url,
                tags
            }
        }
    }
}

Aber es hat überhaupt nicht funktioniert. Params hat die Anfrage nicht übernommen. Die letzte Variante funktioniert, sieht aber nicht so schön aus:

query{
    tumblrPosts(api_key: $api_key, tag: $tag) @rest(type: "TumblrPosts", path: "/posts?api_key=:api_key&tag=:tag") {
        response {
            posts {
                title,
                summary,
                body,
                type,
                post_url,
                tags
            }
        }
    }
}
bug 🐛 enhancement💡

Alle 4 Kommentare

Basierend auf dem Beispiel in den Dokumenten ... ziemlich sicher müssen Sie es so definieren:

query GetTumblrPosts($api_key: String!, $tag: String!) {
...

Hallo @i-hun, Ihr Codebeispiel wird tatsächlich von einigen unserer Dokumente vorgeschlagen. Leider sind wir nicht gerade dazu gekommen, dieses Feature zu bauen.

Der Rat von @fc ist genau, wie das System heute funktioniert. Sie können Ihre beiden Beispiele zusammenführen:

query GetTumblrPosts($api_key: String!, $tag: String!) {
   tumblrPosts(api_key: $api_key, tag: $tag) @rest(type: "TumblrPosts", path: "/posts?api_key=:api_key&tag=:tag") {
        response {
            posts {
                title,
                summary,
                body,
                type,
                post_url,
                tags
            }
        }
    }
}

An Sie beide oder jeden, der dies liest, würde ich das gerne beheben, da unsere API derzeit keine Eingabetypen entpacken kann.

Ich hatte in letzter Zeit keine Zeit, um zu untersuchen, wie das Entpacken implementiert wird. (Über Parameter oder andere Syntaxen, die ich auf Anfrage gerne dokumentiere)

Ich denke, dies sollte behoben werden oder ist möglicherweise einfach veraltet, da wir jetzt die neue param-Syntax verwenden.

War diese Seite hilfreich?
0 / 5 - 0 Bewertungen