2

有人使用 ApolloGraphQl + Rescript 吗?我很难上传文件。如何实现apollo-upload-client?据我了解,我应该使用 createUploadLink 修改 httpLink 并且此函数会更改我的请求中的内容类型。

let httpLink = ApolloClient.Link.HttpLink.make(~uri=_ => Env.graphqlEndpoint, ())
........................................
let client = {
  open ApolloClient
  make(
    ~cache=Cache.InMemoryCache.make(),
    ~connectToDevTools=true,
    ~defaultOptions=DefaultOptions.make(
      ~mutate=DefaultMutateOptions.make(~awaitRefetchQueries=true, ~errorPolicy=All, ()),
      ~query=DefaultQueryOptions.make(~fetchPolicy=NetworkOnly, ~errorPolicy=All, ()),
      ~watchQuery=DefaultWatchQueryOptions.make(~fetchPolicy=NetworkOnly, ~errorPolicy=All, ()),
      (),
    ),
    ~link=ApolloClient.Link.from([authTokenContextLink, httpLink]),
    (),
  )
}

如果有人帮助我,我将不胜感激

4

1 回答 1

1
@module("apollo-upload-client")
external createUploadLink: {"uri": string} => ApolloClient.Types.ApolloLink.t = "createUploadLink"

let uploadLink = createUploadLink({"uri": "..."})

我的一个错误是,当从输入中获取数据时,我尝试使用自己的 File 类型而不是标准 Js.Json.t

于 2021-09-10T07:58:31.493 回答