ByetHost를 사용한 서버 측 쿠키 유효성 검사
문제
Android 앱이 JSON을 구문 분석하고 있습니다. ByetHost 서버의 데이터이지만 대신 HTML 값을 수신합니다. 이 문제는 이전에 올바르게 작동한 후에 발생합니다.
솔루션
ByetHost는 testcookie-nginx-module이라는 봇 방지 보안 모듈을 구현했습니다. 이 모듈은 2단계 프로세스를 사용하여 HTTP 요청의 유효성을 검사합니다.
초기 요청:
후속 요청:
HTML 값의 원인:
Android 앱이 ByetHost 서버에서 데이터를 요청할 때 필요한 유효성 검사 쿠키가 부족합니다. 결과적으로 서버는 앱에서 HTML로 처리되는 JavaScript 리디렉션을 반환합니다.
Android 앱용 솔루션:
검증 쿠키 받기 :
Android 앱에서 쿠키 설정:
Android 앱의 HTTP 요청에 다음 코드를 추가합니다:
<code class="java">httpPost.addHeader("Cookie", "__test=THE_CONTENT_OF_YOUR_COOKIE_HERE; expires=Thu, 31-Dec-37 23:55:55 GMT; path=/");</code>
"__test 바꾸기 =THE_CONTENT_OF_YOUR_COOKIE_HERE"를 실제 쿠키 값으로 바꿉니다.
PHP 파일 예:
<code class="php"><?php // Database connection $result = mysqli_query($con, "SELECT * FROM `pj_medionline_mst_stockist` ORDER BY `ID` ASC"); $response = array(); $posts = array(); while ($row = mysqli_fetch_array($result)) { $posts[] = array( 'id' => $row["ID"], 'stkcode' => $row["stkcode"], 'stkname' => $row["ComName"], 'operatorid' => $row["operatorid"], 'password' => $row["Password"] ); } $response['stokist'] = $posts; print(json_encode($response)); ?></code>
위 내용은 내 Android 앱이 ByetHost 서버에서 JSON 데이터 대신 HTML을 수신하는 이유는 무엇이며 어떻게 해결할 수 있나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!