>  기사  >  백엔드 개발  >  PHP를 사용하여 QQ에 액세스하고 OAuth2.0에 로그인할 때 발생하는 문제

PHP를 사용하여 QQ에 액세스하고 OAuth2.0에 로그인할 때 발생하는 문제

一个新手
一个新手원래의
2017-10-13 09:04:391391검색

머리말

대부분의 웹사이트에는 제3자 로그인이 통합되어 있어 등록 기준을 낮추고 사용자 경험을 향상시킵니다. 최근에 QQ 인터넷에서 QQ 로그인에 대한 인터페이스 문서를 봤습니다. QQ 로그인에 액세스하는 일반적인 프로세스는 다음과 같습니다. 먼저 개발자로 신청한 다음 애플리케이션을 생성합니다(AppId 및 AppKey 세트 가져오기) -> access_token 가져오기 -> openid 가져오기 -> 액세스하려면 사용자 정보를 수정합니다.

그러나 개인 개발자를 신청하는 순간부터 함정이 시작됩니다.

1. (개인) 개발자 신청

QQ인터넷 개발자 정보 신청 페이지의 핵심 사항 중 일부는 너무 간단하고 세부 사항이 부족합니다. 예를 들어 신분증 앞면 사진의 관련 촬영 내용이 있습니다. 설명이 전혀 없네요. 그때 직접 올렸어요. 이 "신분증 앞면 사진"을 3일 동안 기다렸는데, 3일 후 Tencent Open Platform으로부터 심사가 통과되지 않았는데 필요하다는 이메일 알림을 받았습니다. 내 신분증을 보관하기 위해. 알았어 다시 찍자~~. 고객센터에 문의한 후 '신분증 소지' 촬영 자세를 정확하게 파악한 후 플랫폼을 변경하고, Tencent Open Platform에서 애플리케이션 정보를 변경한 후, 신분증을 다시 업로드한 것을 확인했습니다. 업로드 상자 아래 사진. 팁, 신분증을 들고 있는 젊은 여성의 사진을 봤습니다. 꽤 잘생겼고, 프롬프트도 QQ ​​인터넷의 신청 페이지보다 훨씬 좋습니다. 2일 후에 검토가 승인되었습니다.

그래서 개발자를 지원하는 경우에는 Tencent Open Platform에 지원하는 것이 가장 좋습니다. 정보가 비교적 자세하고 더 친근하게 느껴집니다.

2. 인터페이스 호출 - Weibo 게시

(1) Weibo add_t 게시를 위한 인터페이스: 필수 매개변수는 content Weibo 콘텐츠입니다. 호출 시 매개변수는 배열 키-값 쌍 형식으로 전달되어야 합니다. 그렇지 않으면 매개변수가 제공되지 않았다는 오류가 보고됩니다.


$qc = new QC('你的access_token', '你的openid');
$weibo = [
    'content' => '微博内容'
];
$result = $qc->add_t($weibo);

(2) 사진이 포함된 Weibo 게시 인터페이스 add_pic_t: 필수 매개변수는 콘텐츠 Weibo 콘텐츠와 사진 Weibo 사진입니다. 호출 시 매개변수도 키-값 쌍으로 전달됩니다. 또한 이미지는 바이너리 스트림 형식으로 업로드됩니다. 문서에서 이에 대한 인터페이스 예제를 찾지 못했습니다. 마지막으로 CURLFIle 클래스를 사용하여 이미지 스트리밍 업로드를 구현했습니다.


$qc = new QC('你的access_token', '你的openid');
$weibo = [
    'content' => '微博内容',
    'pic' => new CURLFile('要上传的图片路径')
];
$result = $qc->add_pic_t($weibo);

pic 매개변수 값은 CURLFile 클래스의 인스턴스입니다(이미지 경로는 절대 경로인 것이 좋습니다). 인터넷의 일부 정보에는 pic 매개변수를 설정하는 file(image_path) 및 file_get_contents(image_path) 메소드가 소개되어 있지만 여기서는 성공하지 못했습니다(웨이보에 성공적으로 게시되었지만 사진이 없습니다)

위 내용은 PHP를 사용하여 QQ에 액세스하고 OAuth2.0에 로그인할 때 발생하는 문제의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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