2017-12-07 11 views
0

どのようにしてクレデンシャルでバッチリクエストを行いますか?私はHTTPのみのJWTクッキーを使用しています.HttpLinkでは、credentials: 'include'オプションを渡して、クッキーをグラフェンサーバーに転送します。 BatchHttpLinkに切り替えようとすると、設定用のオプションを受け入れなくなりました。ソースを見ると、簡単に設定することはできません。誰もこれを処理する方法を知っていますか?ここでReact Apolloを使用した資格情報を含むバッチリクエスト

は、私はバッチ処理せずにそれをやっていた方法は次のとおりです。

window['app-react'].GRAPHQL_URL = window['app-react'].GRAPHQL_URL || 'http://backend.app.local/graphiql' 
const httpLink = new HttpLink({ 
    uri: window['app-react'].GRAPHQL_URL, 
    credentials: 'include' 
}) 
const client = new ApolloClient({ 
    link: httpLink, 
    cache: new InMemoryCache(), 
}) 

ここで私はそれが働い望む方法は次のとおりです。JWTクッキーは、

const batchHttpLink = new BatchHttpLink({ 
    uri: window['joor-react'].GRAPHQL_URL, 
    credentials: 'include' 
}) 
const client = new ApolloClient({ 
    link: batchHttpLink, 
    cache: new InMemoryCache(), 
}) 

を私もそれをこのように行うとヘッダーには渡されません。

答えて

0

今のところapollo-link-batch-httpは、apollo-link-httpと比較してAPIが遅れています。このパッケージには、HTTP-リンク

として使用するアポロ・フェッチと同じオプション/ APIに依存関係を削除するように更新されます。注

(2017年12月7日現在)ここで docsからノートがありますあなたは資格証明書のようなものにカスタマイズをしたい場合はアポロフェッチ

apollo-link-batch-httpの現在のAPIをBatchHttpLinkを使用して

は、カスタムapollo-fetchが必要です。ここにはいくつかのオプションがあります。

  1. createApolloFetchcustomFetchを提供し、フェッチオプションでcredentialsを定義します。
  2. 使用アポロフェッチミドルウェア

    fetch.batchUse(({ options }, next) => { 
        options.credentials = 'include'; 
        next(); 
    }); 
    
関連する問題