【问题标题】:require is not defined on Spotify authorization codeSpotify 授权码上未定义 require
【发布时间】:2016-01-10 12:24:30
【问题描述】:

我们正在使用 HTML 和 JavaScript 制作网页。在尝试执行连接到 Spotify API 的授权过程时,我们遇到了一些问题。

var express = require('express'); // Express web server framework
var request = require('request'); // "Request" library
var querystring = require('querystring');
var cookieParser = require('cookie-parser')

我们在互联网上找到的这段代码使用require() 获取一些数据,但 Chrome 显示:

引用错误:require 未定义。

我们发现 JavaScript 节点可能是问题,所以我们安装了 npm 和 Browserify,但无法正常工作。

我们也在 HTML 中使用了这个:

<script type="text/javascript" src="node.js"></script>
<script type="text/javascript" src="js/main.js"></script>

帮助??

【问题讨论】:

  • 该代码属于服务器端——它不能在 Node 环境之外工作。如果您想使用此 API,我强烈建议您研究 Node;这里是one place of many 开始。

标签: javascript node.js api require spotify


【解决方案1】:

您所拥有的是假定在服务器端运行的代码。 Node、Express 是服务器端组件,您不能在客户端(浏览器内部)运行它们。服务器端使用 'require' 来管理和加载模块,这就是你需要在那里的原因。

我认为您应该做的是将您的请求发送到服务器,服务器应该处理您在那里拥有的身份验证代码,并在用户是否通过身份验证时将状态发送回响应。

【讨论】:

    【解决方案2】:

    require() 不是客户端 JS 的现有方法。

    使用&lt;script&gt; 标记,然后调用它之后的方法。

    这里已经回答了: Client on node: Uncaught ReferenceError: require is not defined\

    Node.JS 是一个服务器端应用程序,您正在尝试运行此客户端。

    请尝试使用并参考此http://requirejs.org/

    【讨论】:

    • 我已按照其他问题中的步骤进行操作,现在出现此错误:错误:尚未为上下文加载模块名称“express”:_。使用 require([]) requirejs.org/docs/errors.html#notloaded
    猜你喜欢
    • 2018-05-21
    • 1970-01-01
    • 2020-06-26
    • 2019-05-11
    • 2017-11-09
    • 1970-01-01
    • 2021-06-18
    • 2021-03-08
    • 1970-01-01
    相关资源
    最近更新 更多