使用抓取功能上传图片时,状态为200,但图片没有上传

时间:2018-07-26 18:59:05

标签: javascript apache react-native fetch

在我的React Native应用程序中,我想使用访存将图像文件上传到我的服务器。我收到200条回复,但是图像没有上传。我的抓取看起来像...

let url = Config.base_url + '/photos'
let filename = this.state.image.substr(this.state.image.lastIndexOf('/') + 1)
// filename: something.jpg

 let data = new FormData()
 data.append('photo', {
   uri: this.state.image,
   type: 'image/jpeg',
   name: filename
 })

 fetch(url, {
    method: 'POST',
    body: data,
    headers: {
      Accept: 'application/json'
    }
  }).then(res => {
    console.log(res)
  })

在Apache错误日志中没有错误。

我的访问日志中的条目看起来像...

123.45.67.89 - - [26/Jul/2018:18:47:30 +0000] "GET /photos/ HTTP/1.1" 200 649 "-" "Ally/1 CFNetwork/901.1 Darwin/17.7.0"

1 个答案:

答案 0 :(得分:1)

在看不到服务器代码的情况下很难分辨,但是您需要检查一些事情。

  1. 您的访问日志显示为“ GET”,尽管您的代码显示该日志使用的是“ POST”。您确定这是正确的日志条目吗?

  2. 在您服务器的接收照片的功能中,您可以记录传入的请求吗?尝试记录身体,看看是否正是您所期望的。

  3. 您可以手动从其他服务(例如cURL)或类似this的应用发送请求吗?如果可行,则问题出在您发送请求的方式上。如果这不起作用,则可能是服务器中存在问题。