我正在编写一个Web应用程序,请求使用带有.mobileconfig文件的用户UDID,其格式如下:
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>PayloadContent</key>
<dict>
<key>URL</key>
<string>https://example.com/profile/enroll</string>
<key>DeviceAttributes</key>
<array>
<string>UDID</string>
<string>IMEI</string>
<string>ICCID</string>
<string>VERSION</string>
<string>PRODUCT</string>
</array>
</dict>
<key>PayloadOrganization</key>
<string>www.example.com</string>
<key>PayloadDisplayName</key>
<string>Profile Service</string>
<key>PayloadVersion</key>
<integer>1</integer>
<key>PayloadUUID</key>
<string>3956C530-18F0-4B3D-B4C5-XXXXXXXXXXXX</string>
<key>PayloadIdentifier</key>
<string>com.example.profile-service</string>
<key>PayloadDescription</key>
<string>This temporary profile will be used to find and display your current device's UDID.</string>
<key>PayloadType</key>
<string>Profile Service</string>
</dict>
</plist>
我使用与SSL相同的证书对此个人资料进行了签名,并在用户点击个人资料时显示为已验证。但是,在选择安装配置文件后,没有数据传回我的服务器。我已尝试使用'php://input'
和$HTTP_RAW_POST_DATA
,但在页面加载时两者都为空。我已经确定该页面实际上正在加载,因为我可以在PHP文件中echo
出现这些内容。有什么东西我显然做错了吗?
答案 0 :(得分:0)
如果我正确理解了这个问题,你需要将应用程序本身(或其他东西)传递给输出缓冲区。为此,您需要php://output。
使用stream_copy_to_stream,您可以快速完成一个单行程序: stream_copy_to_stream(file:// ...,php:// output);
如果情况并非如此,请告诉我您的描述中缺少的内容。
答案 1 :(得分:0)
数据通过POST发送。
print_r($_POST);
你应该看看发送了什么