2017-06-03 4 views
0

私は、iCloudカレンダーからicsデータを取得するために、PHP WebアプリケーションでcURLを使用していますが、最近は動作を停止しています。 JSONレスポンスは{"reason": "Origin header is or missing"、 "error":1}です。iCloudによって提供されるリンクはwebcal://プロトコルを持っていますが、これまではhttps:/ /。cURLアップルiCloudカレンダーサブスクリプションリンクに失敗する

$request = curl_init(); 
curl_setopt_array($request, array 
    (
    CURLOPT_URL => 'https://p05-calendarws.icloud.com/ca/subscribe/1/D_qOGO6JavMSf055UDaLZJP3SMdywBrlw_w6JkYC1yNJK6R5oxtSOXXXXXXXXXX', 
    CURLOPT_POST => FALSE, 
    CURLOPT_RETURNTRANSFER => TRUE, 
    CURLOPT_HEADER => FALSE, 
    CURLOPT_FOLLOWLOCATION => TRUE 
)); 

$response = curl_exec($request); 
curl_close($request); 

私はそれは、彼らが最近推進してきたAppleとその2要素認証に問題があるかもしれないと思う:

は、ここでPHPのカールの要求です。これが原因であれば、iCloudからアプリ固有のパスワードを取得する場所を見つけましたが、ここで実装する方法はわかりません。

答えて

1

おそらく手遅れですが、これは公開された(共有可能な、読み取り専用の)カレンダーでのみ有効です。私は私の1つでそれを試してみました(そして、$応答をecho'dしました)、私のカレンダーのすべてのイベントを得ました。

CURLOPT_URL => 'https://p35-calendars.icloud.com/published/2/f3en8ZL-G5cgxxxxxxxxx' 
関連する問題