對於我爲小學建設的應用程序,教師可以通過登錄他們的課堂帳戶訪問它,但學生不能。我如何確定一個特定的用戶是否是一名教師?如何確定登錄用戶是否是谷歌教室中的教師?
我注意到測試教師帳戶擁有權限CREATE_COURSE,但學生沒有。我能否認爲這是普遍真實的......如果某人擁有CREATE_COURSE權限,他們就是某個課程的老師。
對於我爲小學建設的應用程序,教師可以通過登錄他們的課堂帳戶訪問它,但學生不能。我如何確定一個特定的用戶是否是一名教師?如何確定登錄用戶是否是谷歌教室中的教師?
我注意到測試教師帳戶擁有權限CREATE_COURSE,但學生沒有。我能否認爲這是普遍真實的......如果某人擁有CREATE_COURSE權限,他們就是某個課程的老師。
正如你上面提到的,如果你發送請求到userProfiles,用userId,如果你在響應中獲得權限爲create_course,那麼它的老師。其他方面,它的學生。這裏
{
"id": string,
"name": {
object(Name)
},
"emailAddress": string,
"photoUrl": string,
"permissions": [
{
object(GlobalPermission)// Here it should be create_course for teacher
}
],
}
稍微不同的方法是list courses與查詢參數: 'teacherId'=> '我'。這樣你就可以獲得當前用戶正在教授的所有課程。如果您獲得0個結果,則表示用戶不是任何地方的教師。無論如何,如果你只需要知道用戶是否被認爲是老師,那麼反過來可能會更有效率。
通過CREATE_COURSE
許可來區分教師和學生對於您的用例來說可能就足夠了,但請注意,根據如何配置域的「課堂」實例,用戶可能能夠自我識別爲教師;見https://support.google.com/edu/classroom/answer/6071551。
就在最近,根據https://issuetracker.google.com/issues/36760055,你可以使用https://developers.google.com/classroom/reference/rest/v1/userProfiles來確定用戶是否是老師
{
"verifiedTeacher": boolean
}
由於接下來的步驟得到了老師的課程,這可能工作對我來說更好。 – anar