0

基本認証を使用して、.NET コードを使用して Pentaho にログインしようとしています

私のコードは次のとおりです。

Dim request = WebRequest.Create("http://x.x.x.x:8080/pentaho/Home")
Dim authInfo As String = Convert.ToString(userName) & ":" & Convert.ToString(userPassword)
authInfo = Convert.ToBase64String(Encoding.[Default].GetBytes(authInfo))
request.Headers("Authorization") = "Basic " & authInfo
Dim response As WebResponse = request.GetResponse()

Base64 エンコードの Basic username:password で認証ヘッダーを渡していることがわかります。

上記のコードの最後の行

Dim response As WebResponse = request.GetResponse()

pentaho サーバーから応答を取得し、変数応答に割り当てていることがわかります。

実行中、Pentaho が response を返し、値を変数responseに入れることができることがわかりました。認証は成功し、正常にログインできたようです

しかし、リンクを入力するhttp://x.x.x.x:8080/pentaho/Home とログインページが表示され、再度ログインする必要があります....

Pentaho が上記のコードの後に​​自動でログインできないようにするために、私が紛失したコードを知っていますか? どうもありがとうございました!!!!!

4

1 に答える 1

0

URLにパラメーターとして入れてみましたか:つまり:

?userid=joe&password=password

ただし、もう一度見ると、ログインした応答を正常に取得している場合、ログインしていない次のリクエストでは、これら 2 つのリクエスト間でセッション/Cookie が保持されていません。httpclientを使用してJavaで簡単に実行できますが、.netについてはよくわかりません

于 2013-06-24T18:30:12.193 に答える