试图创建一个ACS服务器使用钛工作室。遵循像素网格(https://github.com/appcelerator/pixgrid/)的示例,但在尝试在本地运行时总是会出错;控制台输出:
信息安装依赖关系..。 安装了信息依赖项。 信息socket.io启动 发生错误。TypeError:不能调用Object.start (/app.js:8:7)中未定义的方法“init”
app.js清单:
var ACS = require('acs').ACS,
logger = require('acs').logger,
express = require('express'),
partials = require('express-partials');
// initialize app (setup ACS library and logger)
function start(app) {
ACS.init('***', '***');
logger.setLevel('DEBUG');
//use connect.session
app.use(express.cookieParser());
app.use(express.session({ key: 'node.acs', secret: "secret" }));
//set favicon
app.use(express.favicon(__dirname + '/public/images/favicon.ico'));
//set to use express-partial for view
app.use(partials());
//Request body parsing middleware supporting JSON, urlencoded, and multipart
app.use(express.bodyParser());
}
// release resources
function stop() {
}当然,我有我的誓言钥匙和秘密在*。从命令行运行时相同(acs运行)。
我正在运行钛工作室,构建3.4.1.201410281727。
不过,我可以发布服务,然后在云中运行它,而不会出现任何问题。对于开发来说,这并不理想,因此希望在本地运行它(本地node.ACS服务器)。
我想安装东西的地方(只使用默认的)或权限一定有问题。有谁知道怎么解决这个问题吗?现在花了几个小时在互联网上搜索,但似乎是唯一有这个问题的人。不知道还能尝试什么。谢谢你读了这么多。如果你需要更多的信息来帮助我,告诉我。
发布于 2015-03-02 14:31:07
好吧,我发现问题了。他们在上次升级时改变了使用ACS的方式。
经典模式是:
var ACS = require('acs').ACS;
ACS.init('<ACS Key>', '<ACS secret');现在他们改变了它,ACS是一个“模块”,就像任何其他模块一样,所以您必须使用新的方式。在package.json文件中,将其作为依赖项添加:
"dependencies": {
"acs-node": ">=0.9.2"
}安装:npm install acs-node
现在,您可以在app.js文件上以其新格式使用它:
var ACS = require('acs-node');
ACS.init('<App Key>');这一切在这里都有解释:acs
https://stackoverflow.com/questions/28084285
复制相似问题