如何制作包含已创建记录的感谢页面?

时间:2019-03-31 15:37:51

标签: node.js http

我正在设置我的第一台服务器(使用Node JS),并希望打开一个带有预制的感谢页面和一些动态内容的标签(例如,评论或联系表格)。

当我通过Thankyou页面发送新请求时,为什么我的set cookie不可用? 如何将JS文件链接到HTML文件,该文件将作为响应通过读取流发送?

  • 我设法通过使用readstream返回html谢谢页面
  • 我在html主页面上设置了一个cookie,将从该cookie发送评论或表单
  • 我将JS文件链接到了感谢页面,该页面在我手动打开html文件时可以工作

我的计划是这样的:

  1. 发布带有审核数据的请求
  2. 服务器会将新创建的记录的ID设置为cookie
  3. 服务器将回复感谢页面
  4. “谢谢”页面会自动请求带有Cookie ID的评论
  5. 客户端JS正确输入了必需的信息

我遇到了以下问题:

  1. Thankyou页面上的请求中没有Cookie(可从我的主页上获得)
  2. 当我想在返回的thankyou页面中使用其功能时,JS文件未正确链接(但如果我在文件资源管理器中打开它,则可以使用该文件)

旁注:

  • 我不使用快递
  • 我不想安装模块,因为在没有不必要的依赖的情况下学习是我的挑战

节点服务器端

// Return created review to thankyou page
      else if (req.url === "/confirmReview") {

        console.log("test")
        res.writeHead(200)

        console.log(parseCookies(req).reviewID);
        console.log(req.headers.cookie);

        // Get review that user created through cookie
        con.query("SELECT * FROM reviews.reviews WHERE reviewID = " + parseCookies(req).reviewID, function(err, result, fields) {
          if (err) throw err;

          console.log('fire?')

          res.writeHead(200, {"Content-Type": "text/json"});
          res.end(JSON.stringify(result));

        });
      };

客户端

<!DOCTYPE html>
<html lang="en" dir="ltr">
  <head>
    <meta charset="utf-8">
    <title>test</title>

  </head>
  <body>

    <p>This is a test response</p>

  </body>

  <script src="./test.js"></script>

</html>

我认为可以通过一种更适当的方法来制作“谢谢”或“确认”页面,但找不到足够的在线基础信息。 我不需要插件,我只想知道它在理论上是如何完成并尝试构建它的。

0 个答案:

没有答案