제 프론트엔드 코드는 이렇습니다.
백엔드는 php로 작성했습니다.
<code><?php class IBaseAction extends Action { public $params = array();// 所有请求的参数 public $return = array('returnCode' =>200, 'returnDesc' => 'success'); // 返回的基础数据 function __construct() { $this->return['serverTime'] =time(); Log::record('传入的参数:' . var_export($_REQUEST, true),Log::DEBUG); $this->params = @json_decode(base64_decode(I('post.params'),true),true); if (!$this->params){ $this->return['returnCode'] =100; $this->return['returnDesc'] = 'sign failed!'; $this->responseJson(); }else if(C('KEY')!=$this->params['key']){ $this->return['returnCode'] =100; $this->return['returnDesc'] = 'sign failed!'; $this->return['returnAlert'] = '密钥不正确!'; $this->responseJson(); } } /* * 检查接口传入的方式 */ public function checkPublicParams($interfaces) { $pass = false; $this->return['returnCode'] = 100; if (!I('post.')) { $this->return['returnDesc'] = '请求方式错误'; } else if (!I('post.method') || !I('post.params')) { $this->return['returnDesc'] = '接口参数错误'; } else if (!array_key_exists(I('post.method'), $interfaces)) { $this->return['returnDesc'] = '接口名错误'; } else { $this->return['returnCode'] = 200; $pass = true; } return $pass; } protected function responseJson() { exit(json_encode($this->return)); } }</code>
변경되지 않은 상태는 반품 인증 실패
“{"returnCode":100,"returnDesc":"sign failed!","serverTime":1476799012}"
저도 인터넷에서 수정 방법을 찾았습니다.
그런데 수정하는 방법을 모르겠어요
제 프론트엔드 코드는 이렇습니다.
백엔드는 php로 작성했습니다.
<code><?php class IBaseAction extends Action { public $params = array();// 所有请求的参数 public $return = array('returnCode' =>200, 'returnDesc' => 'success'); // 返回的基础数据 function __construct() { $this->return['serverTime'] =time(); Log::record('传入的参数:' . var_export($_REQUEST, true),Log::DEBUG); $this->params = @json_decode(base64_decode(I('post.params'),true),true); if (!$this->params){ $this->return['returnCode'] =100; $this->return['returnDesc'] = 'sign failed!'; $this->responseJson(); }else if(C('KEY')!=$this->params['key']){ $this->return['returnCode'] =100; $this->return['returnDesc'] = 'sign failed!'; $this->return['returnAlert'] = '密钥不正确!'; $this->responseJson(); } } /* * 检查接口传入的方式 */ public function checkPublicParams($interfaces) { $pass = false; $this->return['returnCode'] = 100; if (!I('post.')) { $this->return['returnDesc'] = '请求方式错误'; } else if (!I('post.method') || !I('post.params')) { $this->return['returnDesc'] = '接口参数错误'; } else if (!array_key_exists(I('post.method'), $interfaces)) { $this->return['returnDesc'] = '接口名错误'; } else { $this->return['returnCode'] = 200; $pass = true; } return $pass; } protected function responseJson() { exit(json_encode($this->return)); } }</code>
변경되지 않은 상태는 반품 인증 실패
“{"returnCode":100,"returnDesc":"sign failed!","serverTime":1476799012}"
저도 인터넷에서 수정 방법을 찾았습니다.
그런데 수정하는 방법을 모르겠어요
OPTIONS
요청의 경우 반환된 HTTP 응답에는 다음 정보가 포함되어야 합니다.
1. 도메인 간 요청을 허용하는 방법
<code>Access-Control-Allow-Methods: GET,POST</code>
2. 교차 도메인 요청에 대한 사용자 정의 헤더 허용
AJAX 요청 등
<code>Access-Control-Allow-Headers: X-Requested-With</code>
3. 도메인 간 요청을 허용하는 소스
<code>Access-Control-Allow-Origin: *</code>
자세한 내용은 다음을 참조하세요.
http://www.ruanyifeng.com/blo...