gpt4 book ai didi

php - Google 服务客户端 (PHP) 方法文档如何工作?

转载 作者:行者123 更新时间:2023-12-04 15:34:23 26 4
gpt4 key购买 nike

我在使用未在某处明确示例的任何客户端服务方法时一直遇到困难。尽管遵循了文档甚至阅读了源代码,但我按照该方案提出的类或方法名称从来都不对。

文档位于 Packagist (参见“发出请求”)表示客户端库类是从 Google 端点自动生成的,这与 library's docs on Github 中的描述一致,即访问方法的模式应为“$service->resource->method (参数)”。

那么为什么是下面的呢?

// works:
// I get a countable object of active classrooms owner by the specified id
$response = $this->ClassroomService->courses->listCourses([
'courseStates' => 'ACTIVE',
'teacherId' => 'me']);

// works:
// I get an instance of the single classroom's object containing lots of meta data
$response = $this->ClassroomService->courses->get( $id );

// does not work:
// 500 error, obj has no such method
$response = $this->ClassroomService->topics->listCoursesTopics( $id );

根据API Explorer这三个都应该没问题。

我在使用客户端服务对象时遗漏了什么?

编辑最终,我将示例中的资源确定为“courses_topics”;根据文档,该方法是正确的。感谢 @ebram 的想法。问题仍然是如何命名这些方法。 courseWork 是我的下一个挑战,它不符合topics 的命名模式。

最佳答案

  • ClassroomService 没有topics 成员。
  • 成员名为courses_topics

您的代码应如下所示:

$response = $this->ClassroomService->courses_topics->listCoursesTopics( $id  );
  • Google_Service_Classroom_CoursesTopics_Resource 的文档确实错误地提供了成员名为 ->topics 的示例代码。
  • 鉴于 API 文档是从源代码生成的,但示例代码(通常)是手写的,因此我假设 API 文档是正确的,而示例代码是不正确的。我会向 Google 提交文档错误。

更新:

我看了the PHP source code for Google_Service_Classroom in GitHub并验证该属性被命名为 courses_topics 而不是 topics,所以结论是:示例代码是错误的

同样有趣的是,实际源代码中的资源类型是 Google_Service_Classroom_Resource_CoursesTopics,但文档将其称为 Google_Service_Classroom_CoursesTopics_Resource - 因此该文档肯定是错误的。

关于php - Google 服务客户端 (PHP) 方法文档如何工作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60233586/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com