GraphQL - 尝试使用apolloUploadExpress上传文件时出错

时间:2017-10-28 21:06:46

标签: node.js graphql apollo-server

你好吗? 我正在尝试配置我的graphql服务器以允许发送文件以及我的变异。 我已经尝试过几种方式,现在我正在尝试 apolloUploadExpress ,直到那时没有成功。 我的服务器的初始化如下所示:

const app = express();
app.use('/graphql', bodyParser.json(), 
apolloUploadExpress({
uploadDir: '/home/xxx/projects/xx/upload/'
 }),
graphqlExpress(req => {
return {
    context: {
        req
    },
    graphiql: true,
    schema,
    rootValue: root
};
}));

我的卷发看起来像这样:

curl -X POST   http://localhost:5000/graphql     -H 'content-type: multipart/form-data; boundary=----WebKitFormBoundary7MA4YWxkTrZu0gW'   -H 'postman-token: 7c5230d1-1605-6559-7609-ab373934831e'   -F 'query={"query":"mutation{\n  setImage(input:{clientMutationId:\"123\", id:\"123\", part:\"asda\"}){\n    clientMutationId\n  }\n}","variables":null}'   -F file=@/home/xxxxx/Pictures/cat.jpg

当我做卷曲时,我得到错误。在graphql控制台中显示:

  

未定义:1   undefined ^

     

SyntaxError:位于0的JSON中的意外标记u       在Object.parse

有人可以帮我这个吗?

1 个答案:

答案 0 :(得分:0)

有类似的问题。确保包含

上传:解析器中的GraphQLUpload

请参阅https://github.com/jaydenseric/apollo-upload-server#upload-scalar