Создать URL-адрес веб-службы Passbook Pass, не работающий через php

Я создал проход через PHP и попробовал его на iOS и на своем iPhone, и все работает нормально.

Теперь у меня проблема с «обновить мой пропуск», проблема в том, что я не получаю никаких полезных нагрузок на свой сервер.

У меня есть сертификат SSL. на моем сервере работает. Это мой файл JSON для генерации Pass.

{"description":"Your Booking @ XXXXXX","formatVersion":1,
 "organizationName":"xxx Pte Ltd",
 "passTypeIdentifier":"pass.com.xxx",
 "serialNumber":"R_TheTtSFAmc7U",
 "teamIdentifier":"3WZWSR88QK",
"locations":[{"longitude":-122.3748889,"latitude":37.6189722},

{"longitude":-122.03118,"latitude":37.33182}],
 "eventTicket":{"headerFields":[{"key":"booking","label":"Booking","value":"xxxxx"}],       
"primaryFields":[{"key":"date","label":"Booking date","value":"JAN 15"}],
  "secondaryFields":[{"key":"hour","label":"Booking    time","value":"19:00"}],

"auxiliaryFields":[{"key":"address","label":"Address","value":"90 Club Street"}],

"backFields":[{"key":"bookingname","label":"Booking","value":"XXXX"},   
 {"key":"member-code","label":"Spin Code","value":"xxxx"}]},
  "barcode":{"format":"PKBarcodeFormatQR",
  "message":"{\"membCode\":\"xxx\"}","messageEncoding":"iso88591"},"foregroundColor":" rgb(255, 255, 255)",
   "backgroundColor":"rgb(60, 65, 76)"
   "webServiceURL":"https://dev.xxx.com/passbook/passwallet.php","authenticationToken":"dnMua2FsYUB3ZWVsb3kuY29tOndlZWxveTAx"}

passwallet.php

 $request = explode("/", substr(@$_SERVER['REQUEST_URI'], 1));

   var_dump($request);
 $data1 = $passUpdate->snconnect($request);
    $inputJSON = file_get_contents('php://input');

$push_token = json_decode($inputJSON, TRUE);

$push_token = $push_token->pushToken;
//device token store in db
$data2 = $passUpdate->snconnect($push_token);

Любая помощь будет оценена, спасибо,


person srivathi    schedule 14.01.2016    source источник
comment
Что у вас в логах сервера и php. Что показывает журнал устройства в Xcode при обновлении прохода?   -  person PassKit    schedule 14.01.2016


Ответы (1)


Ваш webServiceURL указывает на файл, хотя он должен указывать на корень службы RESTful.

Вы не получаете ответа на устройстве, потому что косая черта после «passwallet.php» заставляет ваш сервер рассматривать passwallet.php как папку, а затем пытается найти индексный файл для полного пути запроса. Этого не существует, поэтому устройство получает ответ 404 с вашего сервера.

Переименуйте passwallet.php в index.php и настройте свой сервер для перезаписи всех запросов в index.php (аналогично тому, как вы бы настроили красивые URL-адреса в Wordpress).

person PassKit    schedule 14.01.2016
comment
Спасибо за ваш ответ, переименуйте мое имя файла и обновите мой статус. - person srivathi; 14.01.2016
comment
Большое спасибо. Работает нормально. - person srivathi; 14.01.2016