用PHP编写的包装类课程,简化了通过SOAP与Apple GSX Web Service API进行通信。
将课程包括在您的项目中。
function autoload ( $ class ) {
require_once ( "{ $ class } .class.php " );
}
spl_autoload_register ( ' autoload ' );
该类具有一个构造器,因此您必须使用参数实例化。
$ gsx = new GSX ( ' {REGION CODE} ' , ' {ENVIRONMENT} ' , ' {CERTIFICATE FILE} ' , ' {CERTIFICATE PASSPHRASE} ' );
现在,您只需调用$gsx->request('method', $data)
其中$data
是包含该方法适当数据的数组。
身份验证创建了所有其他方法所需的会话ID。会话ID有效期为30分钟,因此您可能需要将其与浏览器会话或数据库中的时间戳一起保存,以防止用户获得ATH.LOG.20错误。
$ data = [
' AuthenticateRequest ' => [
' userId ' => ' [email protected] ' ,
' languageCode ' => ' en ' ,
' userTimeZone ' => ' CEST ' ,
' serviceAccountNo ' => ' 1000001 ' ,
],
];
$ request = $ gsx -> request ( ' Authenticate ' , $ data )-> AuthenticateResponse ;
echo json_encode ( $ request );
输出(如果成功的话)看起来像
{ "userSessionId" : " 26US9Svslm6DzQpQRDLkdfM " , "operationId" : " LnjrLfZfhK3GLM4TzwRKv " }
想知道设备的保修状态吗?
' WarrantyStatusRequest ' => [
$ data = [
' userSession ' => [
' userSessionId ' => ' 26US9Svslm6DzQpQRDLkdfM ' ,
],
' unitDetail ' => [
' serialNumber ' => ' 70033CDFA4S ' ,
' shipTo ' => ' 1000001 ' ,
],
],
];
$ gsx -> request ( ' WarrantyStatus ' , $ data )-> WarrantyStatusResponse -> warrantyDetailInfo -> warrantyStatus ;
是否需要知道特定部分是否被某个comptia覆盖?
$ parts [] = [ ' partNumber ' => ' 661-02757 ' , ' comptiaCode ' => ' H03 ' ];
$ parts [] = [ ' partNumber ' => ' 661-7109 ' , ' comptiaCode ' => ' L03 ' ];
$ data = [
' WarrantyStatusRequest ' => [
' userSession ' => [
' userSessionId ' => ' 26US9Svslm6DzQpQRDLkdfM ' ,
],
' unitDetail ' => [
' serialNumber ' => ' 70033CDFA4S ' ,
' partNumbers ' => $ parts ,
' shipTo ' => ' 1000001 ' ,
],
],
];
$ gsx -> request ( ' WarrantyStatus ' , $ data );
对于其余示例, $data
是一个数组,其中包含适用于API方法的数据。
要查找激活锁状态,只需在响应中抓住激活锁定键即可。
$ gsx -> request ( ' WarrantyStatus ' , $ data )-> WarrantyStatusResponse -> warrantyDetailInfo -> activationLockStatus ;
$ gsx -> request ( ' FetchIOSActivationDetails ' , $ data )-> FetchIOSActivationDetailsResponse -> activationDetailsInfo -> serialNumber ;
$ gsx -> request ( ' ComptiaCodeLookup ' , $ data )-> ComptiaCodeLookupResponse -> comptiaInfo ;
集成测试(GSXIT)
接受测试(GSXUT)
生产(GSX)
DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE
Version 2, December 2004
Copyright (C) 2004 Sam Hocevar <[email protected]>
Everyone is permitted to copy and distribute verbatim or modified
copies of this license document, and changing it is allowed as long
as the name is changed.
DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
0. You just DO WHAT THE FUCK YOU WANT TO.