2017-09-20 19 views
2

角度で$ http.getを使用して、私は問題が持っている同一生成元ポリシーは、リモートリソースを読んで禁止さを.....400不正な要求は

$http({ 
    method: 'GET', 
    url: 'https://<magento_host>/rest/default/V1/orders?searchCriteria[filter_groups][0][filters][0][field]=status&searchCriteria[filter_groups][0][filters][0][value]=processing,pending&searchCriteria[filter_groups][0][filters][0][condition_type]=in', 
    headers : { 
     'Authorization': 'Bearer xxxxxxxxxxxxxxx' 
    } 
    }).success(function (data) { 

    }).error(function (data) { 

    }); 

クロス・オリジンの問題を避けるため、Apacheサーバーの.htaccessファイルに以下のメソッドを設定しました。常にアクセス制御 - 許可 - 起源「*」

  • ヘッダー常にセットアクセス制御 - 許可 - メソッド設定

    1. ヘッダー「POST、GET、OPTIONS、 PUT、DELETE」常にセット
    2. ヘッダーを私はこの

      1. クロスオリジンのrequesのように取得Firefoxの開発者向けツールで認証

      :アクセス制御は-ヘッダを許可しますブロックされました:同じオリジンポリシーでリモートリソースを読み取ることができません
      https:/// rest/default/V1/orders?searchCriteria [filter_groups] [0] [filters] [0] [field] = status & searchCriteria [ filter_groups] [0] [filters] [0] [value] =処理中、保留中& searchCriteria [filter_groups] [0] [filters] [0] [condition_type] = (理由:CORSプリフライトチャンネルが成功しなかった)。我々は解決策を見つけることを試みるが、我々は失敗しました:

    私は、この残りのクライアントデバッガツールを試してみてください

    注意を働いています。助けてください...

  • 答えて

    3

    解決策を得るには、以下のコードを使用します。

    変更オプションは、最終的には、ヘッダをアクティブにし、Apache

    にsudo a2enmodヘッダ

    sudoのサービスapache2の再起動

    を再起動

    200 OK

    RewriteCond %{REQUEST_METHOD} OPTIONS 
    RewriteRule ^(.*)$ $1 [R=200,L] 
    
    <IfModule mod_headers.c> 
        Header always set Access-Control-Allow-Origin "*" 
        Header always set Access-Control-Allow-Headers "Authorization" 
    </IfModule> 
    
    に要請します
    関連する問題