在 redux-saga 中删除 api 以 body 作为负载的调用

Delete api call with body as payload in redux-saga

使用以下代码请求主体不发送数据,这里我使用 redux-saga 调用 make 一个 API.

yield call(api.delete, endpoint, { param },
      { headers: {Authorization: 'some token'}}, {body: { somekey: value}})

当我在浏览器中看到请求体是{}

请告诉我哪里做错了

我认为您没有正确撰写请求。我不确定 param 是什么,但请尝试类似下面的代码。

yield call(api.delete, endpoint, {
     method: 'DELETE',
     url: endpoint,
     headers: {
        Authorization: 'some token',
     }, 
     body: { somekey: value, param: param}
})

有几种方法可以做到这一点,但基本上 headers、body 等需要在相同的 object 中(在这种情况下,最后一个参数传递给 yield call)。按照您的方式,它们实际上位于两个独立的有效载荷中。