|  | @@ -107,70 +107,77 @@ class Model_apittv1 extends Lin_Model {
 | 
	
		
			
				|  |  |      }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |      public function downloadLabel($package_id,$shop,$info){
 | 
	
		
			
				|  |  | -        $url = 'https://open-api.tiktokglobalshop.com';
 | 
	
		
			
				|  |  | -		$link = '/fulfillment/202309/packages/'.$package_id.'/shipping_documents';
 | 
	
		
			
				|  |  | -		$time = time();
 | 
	
		
			
				|  |  | -        $querys = [
 | 
	
		
			
				|  |  | -            'timestamp'=>$time,
 | 
	
		
			
				|  |  | -            'shop_cipher'=>$shop['shop_cipher'],
 | 
	
		
			
				|  |  | -            'app_key'=>$shop['app_key'],
 | 
	
		
			
				|  |  | -            'document_type'=>'SHIPPING_LABEL'
 | 
	
		
			
				|  |  | -        ];
 | 
	
		
			
				|  |  | -         echo "<pre>";
 | 
	
		
			
				|  |  | -		 $sign = $this->sign($link,$querys,[],$shop['app_key']);
 | 
	
		
			
				|  |  | -         var_dump($sign);
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -         $full_url = $url.$link.'?'.http_build_query($querys).'&sign='.$sign;
 | 
	
		
			
				|  |  | -         $ch = curl_init();
 | 
	
		
			
				|  |  | -         curl_setopt_array($ch, [
 | 
	
		
			
				|  |  | -            CURLOPT_URL =>  $full_url,
 | 
	
		
			
				|  |  | -            CURLOPT_RETURNTRANSFER => true, // 返回响应内容而不是直接输出
 | 
	
		
			
				|  |  | -            CURLOPT_HTTPGET => true, // 明确设置为GET请求
 | 
	
		
			
				|  |  | -            CURLOPT_HTTPHEADER => [
 | 
	
		
			
				|  |  | -                'x-tts-access-token: '.$full_url.'',
 | 
	
		
			
				|  |  | -                'content-type: application/json',
 | 
	
		
			
				|  |  | -            ],
 | 
	
		
			
				|  |  | -            CURLOPT_SSL_VERIFYPEER => false, // 仅用于测试环境,生产环境应设为true
 | 
	
		
			
				|  |  | -            CURLOPT_TIMEOUT => 30 // 设置超时时间
 | 
	
		
			
				|  |  | -        ]);
 | 
	
		
			
				|  |  | -        // 执行请求并获取响应
 | 
	
		
			
				|  |  | -        $response = curl_exec($ch);
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -        // 检查是否有错误
 | 
	
		
			
				|  |  | -        if (curl_errno($ch)) {
 | 
	
		
			
				|  |  | -            echo 'cURL错误: ' . curl_error($ch);
 | 
	
		
			
				|  |  | -        }
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -        // 获取HTTP状态码
 | 
	
		
			
				|  |  | -        $httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -        // 关闭cURL资源
 | 
	
		
			
				|  |  | -        curl_close($ch);
 | 
	
		
			
				|  |  | -        var_dump($response);
 | 
	
		
			
				|  |  | -        // $link .= '?'.http_build_query($querys);
 | 
	
		
			
				|  |  | -        // $url = $url.$link;
 | 
	
		
			
				|  |  | +        $res = $this->apitt->downloadLabel($package_id,$shop,$info);
 | 
	
		
			
				|  |  | +        return $res;
 | 
	
		
			
				|  |  | +    }
 | 
	
		
			
				|  |  | +    // public function downloadLabel($package_id,$shop,$info){
 | 
	
		
			
				|  |  | +    //     $url = 'https://open-api.tiktokglobalshop.com';
 | 
	
		
			
				|  |  | +	// 	$link = '/fulfillment/202309/packages/'.$package_id.'/shipping_documents';
 | 
	
		
			
				|  |  | +	// 	$time = time();
 | 
	
		
			
				|  |  | +    //     $querys = [
 | 
	
		
			
				|  |  | +    //         'timestamp'=>$time,
 | 
	
		
			
				|  |  | +    //         'shop_cipher'=>$shop['shop_cipher'],
 | 
	
		
			
				|  |  | +    //         'app_key'=>$shop['app_key'],
 | 
	
		
			
				|  |  | +    //         'document_type'=>'SHIPPING_LABEL'
 | 
	
		
			
				|  |  | +    //     ];
 | 
	
		
			
				|  |  | +    //      echo "<pre>";
 | 
	
		
			
				|  |  | +	// 	 $sign = $this->sign($link,$querys,[],$shop['app_key']);
 | 
	
		
			
				|  |  | +    //      var_dump($sign);
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +    //      $full_url = $url.$link.'?'.http_build_query($querys).'&sign='.$sign;
 | 
	
		
			
				|  |  | +    //      $ch = curl_init();
 | 
	
		
			
				|  |  | +    //      curl_setopt_array($ch, [
 | 
	
		
			
				|  |  | +    //         CURLOPT_URL =>  $full_url,
 | 
	
		
			
				|  |  | +    //         CURLOPT_RETURNTRANSFER => true, // 返回响应内容而不是直接输出
 | 
	
		
			
				|  |  | +    //         CURLOPT_HTTPGET => true, // 明确设置为GET请求
 | 
	
		
			
				|  |  | +    //         CURLOPT_HTTPHEADER => [
 | 
	
		
			
				|  |  | +    //             'x-tts-access-token: '.$full_url.'',
 | 
	
		
			
				|  |  | +    //             'content-type: application/json',
 | 
	
		
			
				|  |  | +    //         ],
 | 
	
		
			
				|  |  | +    //         CURLOPT_SSL_VERIFYPEER => false, // 仅用于测试环境,生产环境应设为true
 | 
	
		
			
				|  |  | +    //         CURLOPT_TIMEOUT => 30 // 设置超时时间
 | 
	
		
			
				|  |  | +    //     ]);
 | 
	
		
			
				|  |  | +    //     // 执行请求并获取响应
 | 
	
		
			
				|  |  | +    //     $response = curl_exec($ch);
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +    //     // 检查是否有错误
 | 
	
		
			
				|  |  | +    //     if (curl_errno($ch)) {
 | 
	
		
			
				|  |  | +    //         echo 'cURL错误: ' . curl_error($ch);
 | 
	
		
			
				|  |  | +    //     }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +    //     // 获取HTTP状态码
 | 
	
		
			
				|  |  | +    //     $httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +    //     // 关闭cURL资源
 | 
	
		
			
				|  |  | +    //     curl_close($ch);
 | 
	
		
			
				|  |  | +    //     var_dump($response);
 | 
	
		
			
				|  |  | +    //     // $link .= '?'.http_build_query($querys);
 | 
	
		
			
				|  |  | +    //     // $url = $url.$link;
 | 
	
		
			
				|  |  |         
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -        // $sign = $this->apitt->sign($url,$shop['app_key'],'') ;
 | 
	
		
			
				|  |  | -        // $headers = array('Content-Type: application/json','x-tts-access-token:'.$shop['token']);
 | 
	
		
			
				|  |  | -        // var_dump($headers);
 | 
	
		
			
				|  |  | -		// $url .= '&sign='.$sign;
 | 
	
		
			
				|  |  | -        // var_dump($sign);
 | 
	
		
			
				|  |  | -        // var_dump($url);
 | 
	
		
			
				|  |  | -        // $res = $this->apitt->su_curl('',$url,$headers,'json',300,"GET");
 | 
	
		
			
				|  |  | +    //     // $sign = $this->apitt->sign($url,$shop['app_key'],'') ;
 | 
	
		
			
				|  |  | +    //     // $headers = array('Content-Type: application/json','x-tts-access-token:'.$shop['token']);
 | 
	
		
			
				|  |  | +    //     // var_dump($headers);
 | 
	
		
			
				|  |  | +	// 	// $url .= '&sign='.$sign;
 | 
	
		
			
				|  |  | +    //     // var_dump($sign);
 | 
	
		
			
				|  |  | +    //     // var_dump($url);
 | 
	
		
			
				|  |  | +    //     // $res = $this->apitt->su_curl('',$url,$headers,'json',300,"GET");
 | 
	
		
			
				|  |  |  		
 | 
	
		
			
				|  |  | -        // print_r($res);
 | 
	
		
			
				|  |  | -        // die;
 | 
	
		
			
				|  |  | +    //     // print_r($res);
 | 
	
		
			
				|  |  | +    //     // die;
 | 
	
		
			
				|  |  |          
 | 
	
		
			
				|  |  | -		// $res = $this->reqGet($url,$headers);
 | 
	
		
			
				|  |  | -        // if($res['httpCode'] != 200){
 | 
	
		
			
				|  |  | -        //     echo "<pre>";
 | 
	
		
			
				|  |  | -        //     print_r($res);
 | 
	
		
			
				|  |  | -        // }else{
 | 
	
		
			
				|  |  | -        //     echo "<pre>";
 | 
	
		
			
				|  |  | -        //     print_r($res);
 | 
	
		
			
				|  |  | -        // }
 | 
	
		
			
				|  |  | +	// 	// $res = $this->reqGet($url,$headers);
 | 
	
		
			
				|  |  | +    //     // if($res['httpCode'] != 200){
 | 
	
		
			
				|  |  | +    //     //     echo "<pre>";
 | 
	
		
			
				|  |  | +    //     //     print_r($res);
 | 
	
		
			
				|  |  | +    //     // }else{
 | 
	
		
			
				|  |  | +    //     //     echo "<pre>";
 | 
	
		
			
				|  |  | +    //     //     print_r($res);
 | 
	
		
			
				|  |  | +    //     // }
 | 
	
		
			
				|  |  |  		 
 | 
	
		
			
				|  |  | -    }
 | 
	
		
			
				|  |  | +    // }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +    
 | 
	
		
			
				|  |  |     
 | 
	
		
			
				|  |  |  }
 |