我正在使用Mocha框架和SuperAgent模塊測試服務器(不是我自己完成的),但是我需要測試服務器Ouath協議。 我找到superagent-oauth模塊以發出簽名請求。如何在node.js中要求插件模塊?
然而,當我需要的模塊,我收到以下錯誤
TypeError: Object.keys called on non-object
我的代碼,遵循在SuperAgent的-的OAuth回購自述文件,並運行時,它是
var superagent = require('superagent');
var log = require('./log.js');
var Oauth = require('node-oauth');
var oauth = new Oauth({..});
require('superagent-oauth')(superagent);
然後測試我得到了在非對象上調用的TypeError:Object.keys。
當將SuperAgent我只是做
var superagent = require('superagent');
agent = superagent.agent();
但我不知道如何使用/需要的SuperAgent-OAuth的模塊。那麼正確的做法是什麼? 謝謝
添加跟蹤
2) Login 'Username:Password' test: POST with a valid login logins into the AM with a valid login: TypeError: Object.keys called on non-object at Function.keys (native) at Request.query (/home/maldo/testingAM/node_modules/superagent-oauth/superagent-oauth.js:22:23) at Context. (/home/maldo/testingAM/loginUserPass.js:74:6) at Test.Runnable.run (/home/maldo/node_modules/mocha/lib/runnable.js:196:15) at Runner.runTest (/home/maldo/node_modules/mocha/lib/runner.js:343:10) at Runner.runTests.next (/home/maldo/node_modules/mocha/lib/runner.js:389:12) at next (/home/maldo/node_modules/mocha/lib/runner.js:269:14) at Runner.hooks (/home/maldo/node_modules/mocha/lib/runner.js:278:7) at next (/home/maldo/node_modules/mocha/lib/runner.js:226:23) at Runner.hook (/home/maldo/node_modules/mocha/lib/runner.js:246:5) at process.startup.processNextTick.process._tickCallback (node.js:244:9)
我得到這個跟蹤文件中loginUserPass幾次總是在代理的.query()statament。這發生在OauthAM.js中,我添加了superagent-ouath require。
+1聲波+問題 – fmsf
你應該張貼整個堆棧跟蹤 – hereandnow78