【发布时间】:2020-12-27 03:54:52
【问题描述】:
希望对我遇到的问题有所帮助。当我在登录/注册时运行突变时,没有任何问题。即使我尝试运行 fetch all 帖子。当我尝试喜欢如下所示的帖子时,我却遇到了这个问题。
前端
这里我们使用一个mutation来创建一个新的like。传递token和post_id(token => user_id)
export const createLike = gql`
mutation like($token: String, $post_id: Int) {
like(token: $token, post_id: $post_id) {
id
}
}
`;
在函数中,我们调用like create 一旦一个人点击了心形按钮。
const [ like ] = useMutation(createLike);
const likePost = () => {
like({ variables: { token, post_id } })
.then((res) => {
console.log('THE RES WAS ', res);
if (res.data.like) {
dispatch(changePostLike(res.data.like));
}
})
.catch((e) => console.log('THE ERROR WAS ', e));
};
<AntDesign
onPress={() => likePost()}
name="heart"
size={40}
color={isLiked ? 'red' : 'white'}
style={{ alignSelf: 'flex-end', marginTop: 20 }}
/>
我注意到后端永远无法访问,并且单击心脏会自动给出 500 的错误。我错过了拼写吗?我已多次阅读我的代码,但找不到该方法的任何问题。
感谢您为此提供的所有帮助。
【问题讨论】:
-
tokan 作为参数,而不是通过链接/标题?调试/探索网络请求详情
-
@xadm 我把它作为 cookie 保存在手机里了吗?在我发出查询请求之前,我得到它并将其发送到后端。我有用于数据的 GraphQL 和用于状态管理的 Redux
-
@xadm 居然发现了问题。当我将数据发送到后端时,它会将 post_id 作为字符串发送,而它需要一个整数。真的希望提供更多信息,而不仅仅是 500 错误。
-
检查原始网络响应? apollographql.com/docs/react/networking/authentication/#header ... 使用
onCompleteduseMutation 选项获取响应(或从钩子返回的“数据”)apollographql.com/docs/react/data/mutations/#options
标签: reactjs react-native graphql apollo-client