在 Javascript 提取中转换 python 请求?

Transpile python request in Javascript fetch?

我想知道如何在 javascript 中编写此 python 请求:

url = "something.something"
data = {"name":"description"}
auth = ("user","11111")

x = requests.post(url, json=data, auth=auth)

到目前为止我有这个:

fetch(`something.something`, {
      method: 'POST',
      header: {
        'Content-Type': 'application/json',
        'Authorization': 'user:11111',
      },
      body: {
        "name": "description"
      }
})

但是我有一个 403。我的猜测是授权格式不正确。

auth = ("user","11111")

x = requests.post(url, json=data, auth=auth)

这使用 HTTPBasicAuth 进行授权。

Basic HTTP Auth 需要在 Authorization header 中传递凭据,如下所示:

Authorization: Basic <base64(user:password)>

所以 javascript 示例应该类似于:

fetch(`something.something`, {
      method: 'POST',
      header: {
        'Content-Type': 'application/json',
        'Authorization': 'Basic ' + btoa('user:11111'),
      },
      body: {
        "name": "description"
      }
})