在javascript XMLHttpRequest中,将POST请求更改为GET请求

在javascript XMLHttpRequest中,将POST请求更改为GET请求,javascript,post,web,get,xmlhttprequest,Javascript,Post,Web,Get,Xmlhttprequest,我的javascript库正在将负载数据从客户端浏览器发送到web服务器 而且,我偶尔会在Web服务器日志中发现一种奇怪的情况。 当通过my library从客户端发送数据时,使用XHR的POST方法和GET方法会使用相同的目标URL间歇性地发送数据 我的库代码如下 const xhr = new XMLHttpRequest() xhr.onreadystatechange = function (event) { if (xhr.readyState === 4 /** respons

我的javascript库正在将负载数据从客户端浏览器发送到web服务器

而且,我偶尔会在Web服务器日志中发现一种奇怪的情况。 当通过my library从客户端发送数据时,使用XHR的POST方法和GET方法会使用相同的目标URL间歇性地发送数据

我的库代码如下

const xhr = new XMLHttpRequest()

xhr.onreadystatechange = function (event) {
  if (xhr.readyState === 4 /** responseText is not available yet */) {
    const statusCode = xhr.status
    const responseText = xhr.responseText

    if (responseValidator(statusCode, responseText)) {
    if (successCallback) successCallback(xhr)
  } else {
    const error = new Error(`${ErrorType.INVALID_RESPONSE}: ${statusCode}`)
    Logger.error(error)
    handleServerError(payloads)
    if (failureCallback) failureCallback(error)
  }
 }
}

xhr.open('POST', url, true /** async */)
xhr.setRequestHeader('Content-Type', 'text/plain; charset=utf8')
xhr.withCredentials = true
xhr.timeout = timeoutMillis
xhr.ontimeout = function (event) {
  const error = new Error(`${ErrorType.REQUEST_TIMEOUT} (${timeoutMillis} millis)`)
  Logger.error(error)
  if (failureCallback) failureCallback(error)
}
xhr.onerror = function (e) {
  handleServerError(payloads)
}
xhr.send(JSON.stringify(payloads))

为什么会发生这种情况?

听起来您的服务器正在返回请求URL的重定向…可能与您的代码无关,只是一个找到URL的机器人。服务器(nginx)重定向到什么情况??