2017-04-25 70 views
-1

我正在使用燒瓶要求發展我的Alexa技能。我想給不同的用戶不同的權限。爲此,我必須訪問用戶ID。我一直在尋找幾天。我已閱讀Flask Ask的文檔,並且沒有足夠的關於訪問UserID的信息。如何使用Flask Ask Library訪問Alexa Skill的用戶ID?

+0

[這是他們的完整文檔中(https://alexatutorial.com/flask-ask/requests.html)。 'UserId'在'session'對象內部找到。 – spicypumpkin

+0

我已經通過這個文檔。當我使用 它不返回任何東西「的uid = session.user.userId」 INFACT它返回一個錯誤 AttributeError的:「NoneType」對象有沒有屬性「會議」 –

+0

,當我試圖返回'問題( session.user.userId)'它給我的Alexa測試選項卡上的內部錯誤500 –

回答

1

根據亞馬遜dev的documentation用於請求格式:「標準請求類型(LaunchRequest,IntentRequest和SessionEndedRequest)包括會話對象從諸如AudioPlayer和PlaybackController接口

要求在上下文不被髮送。因此它們不包含會話對象。context.System.user和context.System.application對象提供與會話中相同對象相同的用戶和應用程序信息 - 請參閱上下文對象。「

所以我想你沒有使用標準的請求。因此,您需要從上下文對象訪問userId。 flask-ask的documentation已更新,以解釋如何訪問該問題。

總之,你應該這樣做:

from flask_ask import context  
uid = context.System.user.userId 
+0

感謝Porchez它完美的工作。 乾杯 –

相關問題