【发布时间】:2018-07-28 16:02:01
【问题描述】:
我正在尝试在我的网站中进行谷歌身份验证,用户在页面上获得身份验证。身份验证后,它会生成一个包含access_token 和refresh_token 的代码,我想将它发送到我的Node 服务器。
我知道Xhttp 是一种方法,但我想避免这种情况。
所以我尝试使用把手。但它们只适用于 html 对吗?
无论如何我可以使用helpers 之类的东西将我的代码发送到服务器吗?
我试图绕过一些帖子,例如:
How can I share code between Node.js and the browser?(已经很老了,Node 应该已经进化到那个时候了吧?)
Sending data from javascript/html page to Express NodeJS server(这个我真的没看懂)
我是 Node.js 的新手,所以有任何猜测或对文档的任何参考吗?
【问题讨论】:
-
您使用 Ajax 从浏览器向服务器发送数据。在浏览器中,您可以使用
XMLHttpRequestAPI 或更新的fetch()API。这是你的两个选择。 -
是的,实际上我想避免
XMLHttpRequest,在上面的链接中,我刚刚发现RequireJS 也是一个选项。但我正在寻找一种方法,如果节点有一个内置的方法,而且我会看看fetch() -
为什么要避免使用 XMLHttpRequest?这就是 RequireJS 在里面使用的。节点是您的服务器。它与您如何将数据从浏览器发送到它没有任何关系。您必须使用浏览器内置的界面之一。 XMLHttpRequest 或 Fetch。听起来您并不真正了解浏览器和服务器之间发生了什么,这让我想知道您是否正确描述了您正在尝试做的事情。也许我们还不明白?
-
如果你说的是在浏览器的网页中运行的 JS 文件,那么 node 根本与选择无关。您受到浏览器支持的限制。浏览器通过 webSocket 接口提供 http 请求(通过 XMLHttpRequest 或 fetch)或 webSocket 请求。选择一个。
-
不确定您所说的易受攻击是什么意思?易受什么影响?互联网上的主要网页都使用 XMLHttpRequest。在基本协议级别,XMLHttpRequest、fetch 和 webSocket 都以 HTTP 请求开始。 XMLHttpRequest 和 fetch 只是发出请求和获取响应的不同接口(fetch 更现代一点)。 webSocket 导致 webSocket 协议上的持久连接,您可以长时间保持活动状态并通过它发送或接收数据。
标签: javascript node.js handlebars.js client-server helpers