카테고리 없음

[php] 애플 푸시 알림 .. 거부?

행복을전해요 2020. 12. 22. 03:25

I'm guessing your PHP version may not have the Sockets functionality installed or enabled which is why you are getting that error.

Taken from PHP.net:

여기에 설명 된 소켓 함수는 구성 할 --enable-sockets 옵션을 제공하여 컴파일 타임에 활성화해야하는 PHP 확장의 일부입니다.

그러나 코드의 경우 해당 socket_close($apns)기능 을 사용할 필요가 없습니다 . 대신 제거하고 닫기를 사용할 수 있습니다. ( Quote from PHP.net ) :

성공하면 다른 파일 함수 (예 : fgets (), fgetss (), fwrite (), fclose () 및 feof ())와 함께 사용할 수있는 스트림 리소스가 반환되고 실패하면 FALSE가 반환됩니다.

따라서 사용 fclose($apns);하면 스트림이 닫힙니다.

-------------------

소켓을 닫는 기능은 없습니다. 소켓을 생성하고 fwrite / fclose 등으로 관리 할 수 ​​있습니다 : http://php.net/manual/en/function.stream-socket-client.php

-------------------

바꾸다:

socket_close($apns);

fclose($apns);

그러면보고 한 오류가 해결됩니다. 그래도 APNS 문제가 실제로 해결되는지 확실하지 않습니다.

-------------------

실제로 해결했습니다. 문제는 메시지의 내용 (비어 있음)이었습니다. 소켓 기능은 완벽하게 작동합니다.

-------------------
$apnsHost = 'gateway.sandbox.push.apple.com';

이 URL에서 " sandbox "를 제거 하면 실행됩니다.



출처
https://stackoverflow.com/questions/7420029