私はZeppelinサーバーを管理していますが、REST API呼び出しを使用してzeppelinインタープリタを再起動しようとしています。私は認証をオンにしました。したがって、私は最初にsessionIDをlogin apiで取得し、それを次のPUTリクエストに渡してインタープリタを再起動しようとしています。Zeppelinは、REST APIを使用した認証後のインタープリタを再起動します
以下は、私が従う手順です。
セッションIDを取得する:
curl -i --data 'userName=admin&password=admin123' -X POST http://zeppelin-server.com:8055/api/login
応答:
:HTTP/1.1 200 OK
Date: Tue, 08 Aug 2017 15:09:14 GMT
Access-Control-Allow-Credentials: true
Access-Control-Allow-Headers: authorization,Content-Type
Access-Control-Allow-Methods: POST, GET, OPTIONS, PUT, HEAD, DELETE
Date: Tuesday, August 8, 2017 11:09:14 AM EDT
Set-Cookie: rememberMe=deleteMe; Path=/; Max-Age=0; Expires=Mon, 07-Aug-2017 15:09:14 GMT
Set-Cookie: JSESSIONID=438b05e7-1a9a-4cbe-aa06-1c3dfv454976; Path=/; HttpOnly
Set-Cookie: JSESSIONID=deleteMe; Path=/; Max-Age=0; Expires=Mon, 07-Aug-2017 15:09:14 GMT
Set-Cookie: JSESSIONID=f404ad12-a21b-4c6c-bcde-d4f8b59c076a; Path=/; HttpOnly
Set-Cookie: rememberMe=deleteMe; Path=/; Max-Age=0; Expires=Mon, 07-Aug-2017 15:09:14 GMT
Content-Type: application/json
Date: Tue, 08 Aug 2017 15:09:14 GMT
Content-Length: 123
Server: Jetty(9.2.15.v20160210)
{"status":"OK","message":"","body":{"principal":"admin","ticket":"f329g1cc-d488-4aef-9b89-6b206ee71496","roles":"[admin]"}}
次に、私が通訳
curl -v -i -b 'JSESSIONID=438b05e7-1a9a-4cbe-aa06-1c3dfv454976; Path=/; HttpOnly' -X PUT http://zeppelin-server.com:8055/api/interpreter/setting/restart/2CGBW7NIF
応答を再開するためにPUT要求にJSESSIONIDを渡しています
HTTP/1.1 302 Found
認証をオフにすると、それ以外の場合に得られるjsonの応答ステータスが表示されません。
ここで間違っていることを誰でも指摘できますか。私はここの指示に従っていた。
https://community.hortonworks.com/questions/52840/authentication-with-the-zeppelin-rest-api.html