WeChat 개발에서 로컬 디버깅을 수행하는 방법은 무엇입니까?
로컬 디버깅만 얘기하면 됩니다.
보통 WeChat 웹페이지는 외부 네트워크에 게시해야 합니다. 매우 어렵고 복잡한 게시 시스템의 경우 FTP가 편리하더라도 우리 프런트 엔드 개도 불평할 수 없습니다(우아함). ) 방법입니다. 기존 온라인 버전의 경우 개발 및 테스트가 완료되기 전에는 누구도 감히 인터넷에 버릴 수 없기 때문입니다.
기존 데스크탑 웹 개발 과정에서는 로컬 개발이 완료된 후의 링크가 테스트 조인트 디버깅이므로 먼저 디바이스에 대한 HOST 구성 방법에 대해 이야기하겠습니다.
1. 장치에 대한 HOST 구성
세계에서 가장 먼 거리, 당신은 외부 네트워크에 있고 나는 테스트 환경에 있습니다.
기기 자체의 HOST 파일을 변경하는 것은 고급(변태적) 방법이므로 기본적으로 변경 권한이 없습니다. 그러나 iOS 기기를 탈옥하거나 Android 기기를 루팅한 후에는 원하는 대로 무엇이든 할 수 있습니다. 호스트 파일을 변경하도록 특별히 설계된 앱도 많이 있습니다. 물론 전제는 기기를 탈옥하고 루팅해야 한다는 것입니다. .
여기에서는 탈옥이나 루팅 없이 기기에 HOST를 구성하는 방법에 대해서만 설명합니다.
주요 아이디어는 호스트를 프록시 서버로 사용하고 휴대폰은 HTTP 프록시를 통해 연결하는 것입니다. 이러한 방식으로 변경하면 목적을 달성할 수 있습니다. 호스트의 HOST.
저와 @xzheng만으로 구성된 팀입니다. 둘 다 Macbook Pro를 작업하고 있습니다. 플랫폼이 비교적 통일되어 있어 다루기가 더 쉽습니다.
우리가 사용하는 도구:
WiFi에 연결된 iMac
동일한 모바일 장치. WiFi 네트워크 세그먼트, iOS 또는 Android는 제한되지 않습니다
애플리케이션 Charles(Charles Web Debugging Proxy • HTTP 모니터 / HTTP 프록시 / HTTPS 및 SSL 프록시 / 역방향 프록시)
HOST 관리 애플리케이션 Gas Mask(2ndalpha/gasmask · GitHub)
주요 단계는 다음과 같습니다.
iMac과 기기를 모두 동일한 Wi-Fi에 연결하고 다음과 같은 동일한 네트워크 세그먼트에 있는지 확인하세요.
iMac 192.168 .1.88
iPhone 192.168 .1.101
Charles를 통해 iMac 프록시 서비스를 열고 패킷을 캡처
기기 HTTP 프록시를 수동으로 설정하세요. 서버 주소는 iMac의 IP이고 기본 포트 번호는 8888
Gas Mask를 통해 iMac HOST 파일 수정
그래서 전체 과정은 다음과 같습니다.
그런데 이렇게 하면 WeChat에 내장된 Webview에 있는 많은 JS API에 (이론적으로) WeChat이 현재 URL의 위치를 자동으로 확인한다는 이점이 있습니다. 권한 확인. 따라서 외부 네트워크의 실제 환경과 일치하는 도메인 이름을 사용하지 않고 이러한 API 메소드를 호출할 수 없는 경우 HOST는 이 문제를 효과적으로 피할 수 있습니다.
위 내용은 모두 휴대폰에 있습니다
http://dianhua.qq.com
요청은 모두 Charles의 프록시를 통해 호스트로 전달됩니다. http://dianhua.qq.com
요청은 HOST 파일에 설정된 IP로 간접적으로 전달됩니다.
2. 로컬 디버깅
질문자가 Zend Studio를 계속해서 언급했을 때 기뻤습니다. PHP가 있고 HOST가 해결되었으며 로컬 디버깅이 쉽지 않습니다.
위의 방법에 따라 휴대폰 HTTP 프록시를 호스트에 연결
호스트에서 로컬 환경을 열고 어떤 PHP 환경 제공업체인지 물어봅니다. 자동으로 중지하고 XAMPP
를 선택하여 호스트 HOST를 로컬 127.0.0.1로 변경했습니다.
http://dianhua.qq.com
전체 과정은 이렇습니다.
위는 휴대폰에서
http://dianhua.qq.com
요청은 호스트를 통과하고 HOST 파일의 영향을 받아 호스트의 htdoc 디렉토리로 이동합니다.
여기 저장, 저기 새로 고침, 바시는 너무 비참해서 울었습니다.
위 예시는 Mac 환경 기준입니다. Windows에서도 무적의 Fiddler + Willow 조합이 필요하다면 시도해 볼 수 있습니다.
이것이 우리의 접근 방식입니다. 주제에 도움이 되기를 바랍니다. 그게 전부입니다.
위 내용은 WeChat에서 로컬 디버깅을 수행하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!