2016-10-17 6 views
1

ディレクトリAPIは、変更のためのリソースを見てサポートしています。 https://developers.google.com/admin-sdk/directory/v1/guides/pushGoogleのディレクトリAPI - ここに記載されているようにウォッチはるかに満了とnotifcations

オプションであるあなたがチャネルを要求したときに有効期限を設定し、またTTL(することができます基本的に同じこと)。しかし、これらはどちらも違いはなく、無視されます。

これはGoogleのAPIのバグですか、それとも回避策がありますか?

ここでは例のリクエストボディです:

{ 
    "address":"https://www.example.com", 
    "expiration":1477664588000, 
    "id":"**my-id**", 
    "params":{ 
     "ttl":"86400" 
    }, 
    "token":"SomeTokenHEre", 
    "type":"web_hook" 
} 

ここで私は24時間(ミリ秒単位のUNIXタイムスタンプ)に有効期限を設定していますし、また24時間(秒として表される)にTTLを設定するには。応答:

{ 
"kind": "api#channel", 
"id": "*My-id*", 
"resourceId": "....", 
"resourceUri": "https://www.googleapis.com/admin/directory/v1/users?customer=my_customer&projection=basic&viewType=admin_view&alt=json", 
"token": "SomeTokenHere", 
"expiration": "1477600105000" 
} 

有効期限は6時間です。常に。

+0

あなたの質問にこれに使用しているリクエストを追加できますか?また、この[Try it](https://developers.google.com/admin-sdk/directory/v1/reference/users/watch#try-it)の部分を使用して、結果の動作が同じ。 – KENdi

+0

Ta。通知チャンネルを設定するには、web_hookエンドポイントをGoogle APIマネージャーコンソールに登録する必要があるため、「試してください」は機能しません。試してみると、(サービスアカウントではなく)Googleのユーザーとして実行しようとするので、常にweb_hookエンドポイントを拒否します。 –

+0

期限切れについてエラーが発生した元の点は私の過失でした。私はミリ秒ではなく数秒で期限切れになっていました。私は今質問を更新しました - GoogleのAPIのバグのように見えますか? –

答えて

0

私は同じ問題に実行しています、そして今、私はこの問題は、あなただけのチャンネルのために6時間の最大値を設定することができますし、それらを6時間ごとに再作成/「リフレッシュ」しなければならないことだと思います。

私は、ttl paramを使用してリクエストボディメソッドを使用してそれらをより少なく設定できることを確認しました。これが有効な方法です。

5分間 {
"address":"https://www.example.com", "expiration":1477664588000, "id":"**my-id**", "params":{
"ttl":"300" }, "token":"SomeTokenHEre", "type":"web_hook" }

しかしそれ以上のものはすべてデフォルトで6時間です。私は100%確信していないので、他の誰かが確認するか、私たちがgoogle devsから正式な言葉を得ることができるなら、それは素晴らしいだろう。

関連する問題