>백엔드 개발 >PHP 문제 >PHP WeChat 공개 계정 공유 실패 문제를 해결하는 방법

PHP WeChat 공개 계정 공유 실패 문제를 해결하는 방법

PHPz
PHPz원래의
2023-04-12 18:54:451575검색

최근 많은 네티즌들은 PHP를 사용하여 개발된 WeChat 공식 계정이 공유 시 공유에 실패한다고 보고했습니다. 이 문제는 항상 존재해 왔으며 명확한 해결책을 찾지 못했습니다. 이 문제의 원인과 해결 방법을 논의해 보겠습니다.

1. 문제의 원인

PHP로 개발된 WeChat 공개 계정에서는 일반적으로 공유 작업에 WeChat JS 인터페이스를 사용합니다. 공유를 위해 WeChat JS 인터페이스를 호출할 때 다음 두 가지 조건을 충족해야 합니다.

  1. WeChat JS 인터페이스는 WeChat 클라이언트 내에서 호출되어야 하며 외부에서 호출할 수 없습니다.
  2. WeChat JS 인터페이스에는 HTTPS를 사용해야 합니다. 통화 프로토콜.

많은 개발자가 개발할 때 다음과 같은 상황으로 인해:

  1. WeChat JS 인터페이스를 호출할 때 HTTP 프로토콜을 사용합니다.
  2. WeChat JS 인터페이스 전송을 호출할 때 WeChat 클라이언트 내부에 있는지 여부는 결정되지 않습니다.

WeChat은 HTTP 또는 비WeChat 클라이언트 내에서 WeChat JS 인터페이스 호출을 허용하지 않기 때문에 이러한 두 가지 문제로 인해 WeChat 공식 계정 공유가 실패하게 됩니다.

2. 해결 방법

  1. HTTPS 프로토콜 사용

WeChat JS 인터페이스를 호출할 때 WeChat에서 공식적으로 규정한 HTTPS 프로토콜을 사용해야 합니다. 따라서 웹사이트가 여전히 HTTP 프로토콜을 사용하고 있다면 HTTPS 프로토콜로 업그레이드해야 합니다.

HTTPS 인증서를 구매하지 않은 경우 일부 무료 인증 기관을 통해 얻을 수 있습니다. 현재 더 일반적으로 사용되는 무료 인증 기관에는 Let's Encrypt 및 Cloudflare가 있습니다.

  1. WeChat 클라이언트 내부에서 호출되는지 확인

WeChat JS 인터페이스를 호출할 때 현재 WeChat 클라이언트 내부에서 호출되는지 확인해야 합니다. 일반적으로 window.navigator.userAgent 中是否包含 "MicroMessenger"를 판단하여 판단할 수 있습니다.

다음은 샘플 코드입니다.

if (window.navigator.userAgent.indexOf("MicroMessenger") === -1) {
    alert("请在微信客户端内部访问本页面");
} else {
    // 调用微信 JS 接口进行分享
}

WeChat 클라이언트 내부에 없으면 사용자에게 WeChat 클라이언트로 이동하여 액세스하라는 메시지가 표시됩니다.

3. 요약

위의 분석과 솔루션을 통해 다음과 같은 결론을 내릴 수 있습니다.

  1. PHP를 사용하여 개발된 WeChat 공개 계정에서 공유 작업을 위한 WeChat JS 인터페이스 호출은 일반적으로 HTTP 사용으로 인해 실패합니다. 프로토콜은 WeChat 클라이언트 내에서 호출되는지 여부를 확인하지 못하여 발생할 수 있습니다.
  2. 이 문제를 해결하는 방법은 HTTPS 프로토콜을 사용하여 호출하는 동시에 현재 클라이언트 내에서 호출되고 있는지 확인하는 것입니다. WeChat 클라이언트;
  3. 공유 실패의 원인이 되는 다른 이유가 있는 경우 WeChat 개발 문서에서 해결 방법을 찾을 수 있습니다.

위 내용이 PHP WeChat 공개 계정 공유 실패 문제를 해결하는 데 도움이 되기를 바랍니다.

위 내용은 PHP WeChat 공개 계정 공유 실패 문제를 해결하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.