Advertisement
Guest User

Untitled

a guest
Mar 27th, 2017
64
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.94 KB | None | 0 0
  1. {
  2. language(id:"58d80f843ad415941d8f908b"){
  3. name
  4. }
  5. }
  6.  
  7. var fetch = require('node-fetch');
  8. var { GraphQLSchema } = require('graphql');
  9. var { GraphQLObjectType } = require('graphql');
  10. var { GraphQLString } = require('graphql');
  11.  
  12. var BASE_URL = "http://localhost:3030";
  13.  
  14. function getLanguageByURL(relativeURL){
  15. return fetch(`${BASE_URL}${relativeURL}`)
  16. .then(res => res.json())
  17. .then(json => json.language)
  18. }
  19. var LanguageType = new GraphQLObjectType({
  20. name: 'Language',
  21. description: '...',
  22.  
  23. fields: () => ({
  24. name: {type: GraphQLString},
  25. }),
  26. });
  27.  
  28.  
  29. var QueryType = new GraphQLObjectType({
  30. name: 'Query',
  31. description: '...',
  32.  
  33. fields: () => ({
  34. language: {
  35. type: LanguageType,
  36. args: {
  37. id: {type: GraphQLString},
  38. },
  39.  
  40. resolve: (root, args) =>
  41. getLanguageByURL(`/languages/${args.id}`)
  42. }
  43. }),
  44. });
  45.  
  46. module.exports.schema = new GraphQLSchema({
  47. query: QueryType,
  48. });
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement