2016-01-14 2 views
2

Я создал пропуск через PHP и попробовал его на iOS и моем iPhone, и все работает нормально.Сгенерируйте пропущенный паролем веб-сервис passbook, не работающий через php

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

У меня есть сертификат 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); 

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

+0

Что находится на вашем сервере и в журналах php. Что показывает журнал устройства в Xcode при обновлении прохода? – PassKit

ответ

1

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

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

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

+0

Спасибо за ваш ответ, переименуйте имя моего файла и обновите мой статус. – srivathi

+0

Большое спасибо. Работать отлично. – srivathi

Смежные вопросы