【问题标题】:Can't get email from Google Classroom student profile无法从 Google 课堂学生资料中接收电子邮件
【发布时间】:2021-02-19 18:53:31
【问题描述】:

我正在尝试编写一个 PHP 例程来将 Google Classroom 注册数据导入我们的数据库。这是我的范围:

$client->setScopes([Google_Service_Classroom::CLASSROOM_COURSES_READONLY, Google_Service_Classroom::CLASSROOM_ROSTERS_READONLY, Google_Service_Classroom::CLASSROOM_PROFILE_EMAILS]);

然后我正在尝试遍历班级注册数据。 (我在我的个人 Google 帐户中开设了一个课程,并让一些同事注册了该课程。)我正在获取个人资料,但电子邮件地址始终为空白:

$results = $service->courses->listCourses();
foreach ($results->getCourses() as $course) {
    $roster = $service->courses_students->listCoursesStudents($course->id);
    foreach ($roster['students'] as $student) {
        $profile = $student['profile'];
        $name = $profile['name'];            // Works
        $first_name = $name['givenName'];    // Works
        $email = $profile['emailAddress'];   // Always null
    }
}

我错过了什么?

【问题讨论】:

    标签: google-apis-explorer google-classroom


    【解决方案1】:

    这已经神秘地开始起作用了……这并没有让我感觉很好,但你知道那种感觉,对吧?没有办法让问题再次出现,所以你只需要希望它不会......如果是这样,我会再次在这里发布。

    也许这与我们刚刚用新范围重新填写表单有关。因此,目前,我在连接之前收到“Google 尚未验证该应用程序”的警告。所以可能是新的作用域,也可能是警告。

    【讨论】:

    • 我开始相信这绝对是新的示波器。所以:解决了。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-11-21
    • 1970-01-01
    • 2020-11-11
    • 2020-08-11
    • 2018-03-04
    相关资源
    最近更新 更多