Tôi đã triển khai chính xác ứng dụng khách API của Google trong ứng dụng PHP của mình. Tôi đã có thể kết nối với dịch vụ tôi muốn.Cách kiểm tra xem khóa API Google Client có hợp lệ với thư viện API của Google PHP không?
Nhưng bây giờ tôi muốn kiểm tra xem liệu khóa API người dùng nhập có hợp lệ hay không.
Tôi đã xem xét xung quanh hoặc tại các phương pháp được hiển thị bởi lớp Google_Client() nhưng tôi không nghĩ rằng tôi chắc chắn cách kiểm tra điều này.
Dưới đây là phương pháp trong lớp học của tôi tạo ra một khách hàng:
private function client($api_key) {
$client = new \Google_Client();
$client->setClassConfig('Google_Cache_File', 'directory', $this->cache_dir);
$client->setDeveloperKey($api_key);
$client->setApplicationName($this->name);
$client->setScopes(array(\Google_Service_Calendar::CALENDAR_READONLY));
$client->setAccessType('online');
return $client;
}
Và tôi muốn thực hiện một phương pháp để biết chìa khóa API được sử dụng là hợp lệ hay không ...
public function validate_api_key($api_key) {
$client = $this->client($api_key);
// What should I use here to check if $api_key is valid?
if ($client) {
return true;
}
return 'error';
}
Hoặc tôi có nên kết nối với một dịch vụ và sau đó kiểm tra xem tôi có quyền truy cập đọc từ đó không? Nhưng tôi tin rằng có một cách đơn giản và tốt hơn để thực hiện việc này ...
Tôi có nên kết nối với dịch vụ và sau đó kiểm tra xem tôi có quyền truy cập đọc từ đó không? Tôi khá chắc chắn đó là họ chỉ có cách để kiểm tra nếu nó hợp lệ – DaImTo
cũng yeah ... Tôi đã hy vọng mặc dù cho một phương pháp trực tiếp trong đối tượng khách hàng trả lại một bool hoặc một cái gì đó ... điều là Google_Client hoặc một dịch vụ Google instantiated khách hàng sẽ vẫn cố gắng kết nối và dịch vụ sẽ phản hồi, do đó, các bước để xác minh xem khóa api có hợp lệ hay không bằng cách kéo dữ liệu thực sự là một số thực sự là – unfulvio
Vâng, cách duy nhất để lib xác thực nó là gửi yêu cầu. Tôi hạn hán Google đã tiếp xúc với định dạng của các phím của nó. thậm chí checkToken() có vẻ như nó chỉ cố gắng thực hiện một yêu cầu giả. – DaImTo