生成存折通行证 Web 服务 url 无法通过 php 工作
Generate a passbook pass web service url not working via php
我通过 PHP 创建了一个通行证并在 iOS 和我的 iPhone 上进行了尝试,一切正常。
现在我遇到了 "update my pass" 问题,问题是我没有将任何有效负载返回到我的服务器。
我有 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);
任何帮助将不胜感激,
谢谢,
您的 webServiceURL 指向一个文件,而它本应指向 RESTful 服务的根目录。
您在设备上得不到任何响应,因为 'passwallet.php' 后的正斜杠使您的服务器将 passwallet.php 视为文件夹,然后尝试查找完整请求路径的索引文件。这不存在,因此设备从您的服务器接收到 404。
将 passwallet.php 重命名为 index.php 并将您的服务器配置为将所有请求重写为 index.php(类似于您在 Wordpress 中设置漂亮 URL 的方式)。
我通过 PHP 创建了一个通行证并在 iOS 和我的 iPhone 上进行了尝试,一切正常。
现在我遇到了 "update my pass" 问题,问题是我没有将任何有效负载返回到我的服务器。
我有 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);
任何帮助将不胜感激, 谢谢,
您的 webServiceURL 指向一个文件,而它本应指向 RESTful 服务的根目录。
您在设备上得不到任何响应,因为 'passwallet.php' 后的正斜杠使您的服务器将 passwallet.php 视为文件夹,然后尝试查找完整请求路径的索引文件。这不存在,因此设备从您的服务器接收到 404。
将 passwallet.php 重命名为 index.php 并将您的服务器配置为将所有请求重写为 index.php(类似于您在 Wordpress 中设置漂亮 URL 的方式)。