【问题标题】:Why is my post request not creating a new JSON file JS? [closed]为什么我的 post 请求没有创建新的 JSON 文件 JS? [关闭]
【发布时间】:2021-06-11 16:51:21
【问题描述】:

我需要知道为什么我的发布请求没有创建新的 JSON 文件。我正在使用 JS POST 获取请求。代码如下。

//Assume all the variables are defined
fetch(lowercaseUsernameStr+'_profile_data.json', {
 method: 'POST',
 headers: {
  'Content-Type': 'application/json',
 },
 body: {
  "publicData": {
    "username": usernameStr,
    "userDescription": userDescription,
    "favoriteGameData": {
     "favoriteGameCategory": favoriteGameCategoryStr,
     "favoriteGameNum": favoriteGameNum
    },
    "stats": {
     "level": 1,
     "levelXP": 0,
     "maxLevelXP": 100,
     "XPUntilNextLevel": 100,
     "totalXP": 0,
     "trophies": 0
    }
  },
  "privateData": {
   "password": passwordStr,
   "email": email,
   "telNum": telNum,
   "userProfilePageVisibilityYesOrNo":
   optionsSelectedOptionStr,
   "userProfilePictureSrc": userProfilePictureSrc
   }
  }
})
.catch((error)=>{
 alert("Sorry! We could not create your account! Please report the problem and wait until it's fixed! Here is the error: " + error);
 //Assume the local url exists
 document.location = 'contact_and_email_will.html';
});
对我来说没有任何容易发现的错误。提前致谢!

【问题讨论】:

  • “创建一个新的 JSON 文件”是什么意思
  • 我了解到 post 请求可以创建新文件并向其中添加内容,而 put 请求只能编辑已经存在的文件。
  • @WillTechX20 您了解了一个约定,但这并不意味着任何 HTTP 服务器都会处理这样的 POST/PUT 请求。

标签: javascript post request fetch


【解决方案1】:

我了解到 post 请求可以创建新文件并向其中添加内容,而 put 请求只能编辑已经存在的文件。

这并不完全正确。在 REST API 中,POST 请求创建新内容和 PUT 请求修改现有内容是惯例。这里的“内容”可以是文件、数据库记录或其他东西。

但是,这只是一个约定,这里并没有什么神奇之处。需要有一个知道该做什么的服务器监听。如果你想在服务器上创建一个 JSON 文件,那么你需要编写服务器端代码来监听特定 url 的 POST 请求,然后使用你的自定义逻辑将 JSON 文件写入你想要的位置。

【讨论】:

    猜你喜欢
    • 2019-02-28
    • 2015-09-30
    • 1970-01-01
    • 2019-03-24
    • 2020-08-03
    • 2015-08-15
    • 2021-11-16
    • 2019-08-30
    • 1970-01-01
    相关资源
    最近更新 更多