2017-10-08 76 views
0

我嘗試連接與Laravel的Folklore \ GraphQL的反應。啓用POST方法Laravel Folklore GraphQL或啓用GET方法在react-apollo

在ReactJS我有這樣的代碼IND index.js

import React from 'react'; 
import ReactDOM from 'react-dom'; 
import registerServiceWorker from './registerServiceWorker'; 

import { ApolloClient, ApolloProvider, createNetworkInterface } from 'react-apollo'; 
import Devices from './components/Devices.js' 

const networkInterface = createNetworkInterface({ 
    uri: 'http://127.0.0.1:8000/graphiql', 
    opts: { 
     credentials: 'same-origin', 
     mode: 'no-cors', 
    }, 
}); 
const client = new ApolloClient({ networkInterface }); 

ReactDOM.render(
    <ApolloProvider client={client}> 
    <Devices /> 
    </ApolloProvider>, 
    document.getElementById('root') 
) 

而且在Devices.js

import React, { Component } from 'react'; 
import { graphql } from 'react-apollo'; 
import gql from 'graphql-tag'; 

class Devices extends Component { 
    render() { 
     console.log(this.props); 
     return(
      <div>Hello</div> 
     ); 
    } 
} 

const query = gql` 
{ 
    devices { 
     id_device, 
     name, 
     type, 
    } 
} 
`; 
export default graphql(query)(Devices); 

但顯示錯誤:

POST http://127.0.0.1:8000/graphiql 405 (Method Not Allowed)

,如果我加入method:'GET'opts顯示以下錯誤:

Unhandled (in react-apollo) Error: Network error: Failed to execute 'fetch' on 'Window': Request with GET/HEAD method cannot have body.

如何將方法POST添加到Folklore \ GraphQL中? 如何設置GET方法到ApolloClient?

回答