Уточните PHP/GRPC — код 14: не удалось подключиться ко всем адресам

#php #laravel #grpc #clarifai

Вопрос:

Итак, у меня возникла эта проблема:

 response: null
status: {
    code: 14 
    details: failed to connect to all addresses
}
 

Я перепробовал все, что мог придумать, но ничего не работает, и у меня закончились идеи. Кто-нибудь может мне помочь? Спасибо!

Это код, как и в примере:

         $image = new Image([
            'base64' => file_get_contents($_SERVER['DOCUMENT_ROOT'] . $fileData['path'] . $fileData['name']),
        ]);

        $data = new Data([
            'image' => $image
        ]);

        $input = new Input([
            'data' => $data
        ]);

        $request = new PostModelOutputsRequest([
            'user_app_id' => $this->userDataObject, // This is defined above
            'model_id' => 'aaa03c23b3724a16a56b629203edc62c',  // This is the ID of the publicly available General model.
            'inputs' => [$input]
        ]);

        [$response, $status] = $this->client->PostModelOutputs(
            $request,
            $this->metadata
        )->wait();

 

Ответ №1:

Eloisa,

Это, скорее всего, приведет к истечению срока действия SSL-сертификата LetsEncrypt.

  • Какую операционную систему вы используете?
  • gRPC планирует исправить эту проблему в следующем выпуске
  • На данный момент вы можете попробовать этот обходной путь: https://github.com/grpc/grpc/issues/27532#issuecomment-934006042
  • Вы также можете использовать простые вызовы REST до тех пор, пока реализация gRPC не будет исправлена

Дайте мне знать, если это поможет!

Комментарии:

1. Эй! Спасибо за ответ, я использую Ubuntu и проект, который находится в Laravel. Итак, эта ссылка была очень полезной, и я решил проблему, перейдя в раздел «поставщик/grpc/grpc/etc/roots.pem» и вставив новый сертификат в комментарий на GitHub ( github.com/grpc/grpc/blob/master/etc/roots.pem )

2. Новая версия 1.41.1 ядра gRPC исправляет это github.com/grpc/grpc/pull/27539