聚合數據接口調用實例


聚合數據接口調用實例

//控制器

class SignController extends Controller
{
const SIGNARRAY=['1'=>'白羊座',2=>'金牛座',3=>'雙子座',4=>'巨蟹座',5=>'獅子座',6=>'處女座',7=>'天秤座',8=>'天蠍座',9=>'射手座',10=>'魔羯座',11=>'水瓶座',12=>'雙魚座'];
public function index()
  {
return view('admin.sign.index');
}

public function getData(Request $request)
  {
$appkey="你的安排appKey";
$url="http://web.juhe.cn:8080/constellation/getAll";
$sign=trim(self::SIGNARRAY[$request->get('sign')]);
$range=trim($request->get('range'));
$params = array(
"key" => $appkey,//應用APPKEY(應用詳細頁查詢)
"consName" => $sign,//星座名稱,如:白羊座
"type" => $range,//運勢類型:today,tomorrow,week,nextweek,month,year
);
$paramstring = http_build_query($params);
$content=$this->juhecurl($url,$paramstring);
$result = json_decode($content,true);
if($result){
if($result['error_code']=='0'){
$data=
'請求時間:'.$result['datetime'].'<br/>'.
'星座:'.$result['name'].'<br/>'.
'綜合指數:'.$result['all'].'<br/>'.
'幸運色:'.$result['color'].'<br/>'.
'健康指數:'.$result['health'].'<br/>'.
'愛情指數:'.$result['love'].'<br/>'.
'財運指數:'.$result['money'].'<br/>'.
'幸運數字:'.$result['number'].'<br/>'.
'速配星座:'.$result['QFriend'].'<br/>'.
'工作指數:'.$result['work'].'<br/>'.
'今日概述:'.$result['summary'].'<br/>'
;
return response()->json(['status'=>'ok','msg'=>'請求成功','data'=>$data]);
}else{
echo $result['error_code'].":".$result['reason'];
}
}else{
return response()->json(['status'=>'error','msg'=>'請求失敗','data'=>$result]);
}
}



/**
* 請求接口返回內容
* @param string $url [請求的URL地址]
* @param string $params [請求的參數]
* @param int $ipost [是否采用POST形式]
* @return string
*/
public function juhecurl($url,$params=false,$ispost=0)
  {
$httpInfo = array();
$ch = curl_init();

curl_setopt( $ch, CURLOPT_HTTP_VERSION , CURL_HTTP_VERSION_1_1 );//設置curl http傳輸協議強制使用http/1.1
curl_setopt( $ch, CURLOPT_USERAGENT , 'JuheData' );//在HTTP請求中包含一個"User-Agent: "頭的字符串。
curl_setopt( $ch, CURLOPT_CONNECTTIMEOUT , 60 );//在發起連接前等待的時間,如果設置為0,則無限等待。
curl_setopt( $ch, CURLOPT_TIMEOUT , 60);//設置cURL允許執行的最長秒數。
curl_setopt( $ch, CURLOPT_RETURNTRANSFER , true );//將curl_exec()獲取的信息以文件流的形式返回不輸出
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);//啟用之后會將服務器返回的Location:放在header中遞歸
//的形式返回給服務器。

if( $ispost )
{
//發送post請求
curl_setopt( $ch , CURLOPT_POST , true );//啟用后會發送一個常規的post請求,類型為
//application/x-www-form-urlencoded,就想表單提交的一樣
curl_setopt( $ch , CURLOPT_POSTFIELDS , $params );//全部數據使用http協議中的POST操作來發送。
curl_setopt( $ch , CURLOPT_URL , $url );//訪問那個url
}
else
{
//發送get請求
if($params){
curl_setopt( $ch , CURLOPT_URL , $url.'?'.$params );
}else{
curl_setopt( $ch , CURLOPT_URL , $url);
}
}
$response = curl_exec( $ch );//執行一個連接
if ($response === FALSE) {
//echo "cURL Error: " . curl_error($ch);
return false;
}
$httpCode = curl_getinfo( $ch , CURLINFO_HTTP_CODE );//獲取一個CURL連接資源句柄的信息
$httpInfo = array_merge( $httpInfo , curl_getinfo( $ch ) );
curl_close( $ch );
return $response;
}
}





免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM