1

サーバー スクリプトから WebAPI 呼び出しを実行しようとしていますが、認証エラーが発生します。

これは私のserver.jsがどのように見えるかです:

var app = require('http').createServer()
  , io = require('socket.io').listen(app)
  , fs = require('fs')
  , moment = require('moment')
  , request = require('request'); //https://github.com/mikeal/request

app.listen(8000, function () {
    console.log('server started');
    doSomethingOnServerStart();
});


function doSomethingOnServerStart()
{
    console.log('Getting something from server');

    request.get({
        url: 'http://localhost:63213/Api/MyAPI/GetSomething',

    },
        function (error, response, body) {
            console.log(response.statusCode);
            if (response.statusCode == 200) {

                console.log('data received from server');

            } else {
                console.log('error: ' + response.statusCode);
                console.log(body);
            }
        });

}

WebAPI 呼び出しを行うために、Mikeal の Request ライブラリを使用しています。HTTP 認証セクション ( https://github.com/mikeal/request#http-authentication ) には、ユーザー名とパスワードを「ハッシュ」として渡すと記載されていますが、そのハッシュを生成する方法は記載されていません。

私はちょっと立ち往生していて、先に進む方法がわかりません。

4

1 に答える 1

1

最初の質問に対処するには、ドキュメントから判断すると、追加の連鎖関数呼び出しを行う必要があるようです。

request.get('http://some.server.com/').auth('username', 'password', false);

またはこのように

request.get('http://some.server.com/', {
  'auth': {
    'user': 'username',
    'pass': 'password',
    'sendImmediately': false
  }
});

auth2番目のケースでは、ハッシュとして持つ必要があることに言及しています(上記のように)。コードのどこにもユーザー名またはパスワードを送信しているようには見えません...

于 2013-07-09T20:13:47.340 に答える