ユーザーに代わってアクティビティを挿入するためのサンプル コード (python) を実行しようとすると、HTTP 500 エラーが発生します。ドメイン全体の委任を設定し、すべての正しいスコープを含めました。サークルの作成、サークルへのユーザーの追加、投稿、コメント、プロフィールの読み取りにドメイン委任を使用して正常に実行しましたが、何らかの理由で、ユーザーに代わって投稿を挿入するためのコードを取得できません。何か案は?コードとエラーは次のとおりです (個人情報は編集されています)。
import httplib2
import pprint
from apiclient.discovery import build
from oauth2client.client import SignedJwtAssertionCredentials
SERVICE_ACCOUNT_EMAIL = 'svc-acct@developer.gserviceaccount.com'
SERVICE_ACCOUNT_PKCS12_FILE_PATH = '/path/privatekey.pem'
USER_EMAIL = 'email@domain.com'
SCOPES = ['https://www.googleapis.com/auth/plus.me',
'https://www.googleapis.com/auth/plus.stream.read',
'https://www.googleapis.com/auth/plus.stream.write',
'https://www.googleapis.com/auth/plus.circles.read',
'https://www.googleapis.com/auth/plus.circles.write',
'https://www.googleapis.com/auth/plus.profiles.read']
def authenticate():
print 'Authenticate the domain for %s' % USER_EMAIL
f = open(SERVICE_ACCOUNT_PKCS12_FILE_PATH, 'rb')
key = f.read()
f.close()
credentials = SignedJwtAssertionCredentials(SERVICE_ACCOUNT_EMAIL, key,
scope=SCOPES, sub=USER_EMAIL)
http = httplib2.Http()
http = credentials.authorize(http)
return build('plusDomains', 'v1', http=http)
def activitiesInsert(service):
user_id = 'me'
print 'Inserting activity'
result = service.activities().insert(
userId = user_id,
body = {
'object' : {
'originalContent' : 'Happy Monday! #caseofthemondays'
},
'access' : {
'items' : [{
'type' : 'domain'
}],
# Required, this does the domain restriction
'domainRestricted': True
}
}).execute()
print 'result = %s' % pprint.pformat(result)
if __name__ == '__main__':
service = authenticate()
activitiesInsert(service)
python addpost.py
email@domain.com のドメインを認証する
アクティビティの挿入
トレースバック (最新の呼び出しが最後):
ファイル「addpost.py」、72 行目、 activitiesInsert(service) 内
ファイル「addpost.py」、64 行目、アクティビティの挿入「domainRestricted」: True
ファイル「build/bdist.macosx-10.6-intel/egg/oauth2client/util.py」、132 行目、positional_wrapper 内
ファイル "build/bdist.macosx-10.6-intel/egg/apiclient/http.py",
行 723、実行中
apiclient.errors.httperror
https://www.googleapis.com/plusDomains/v1/people/me/activities?alt=jsonをリクエストすると HttpError 500 が返されました ""