1

Coursera API ドキュメント: https://tech.coursera.org/app-platform/catalog/

APIへの簡単なGET呼び出しを試みました:

このような:

$scope.courseraSearch = function(query){


    var courseraAPIUrl = 'https://api.coursera.org/api/courses.v1?q=search&query=Machine+Learning';

    $http({
      method: 'GET',
      url: courseraAPIUrl
    }).then(function successCallback(response) {
      console.log(response);
      for(i in response.data.elements){
        $scope.courseraResults.push(response.data.elements[i]);
      }
    }, function errorCallback(response) {
    });
  }

しかし、常に CORS エラーまたは「MIME タイプ ('application/json') が実行可能でなく、厳密な MIME タイプ チェックが有効になっているため、'*' からスクリプトを実行することを拒否されました。」が発生します。エラー。

cors.io をプロキシとして使用してみました:

$scope.courseraSearch = function(query){

    //https://api.coursera.org/api/courses.v1?q=search&query=Calculus
    var courseraAPIUrl = 'http://cors.io/?u=https://api.coursera.org/api/courses.v1?q=search&query=Machine+Learning';

    $http({
      method: 'GET',
      url: courseraAPIUrl
    }).then(function successCallback(response) {
      console.log(response);
      for(i in response.data.elements){
        $scope.courseraResults.push(response.data.elements[i]);
      }
    }, function errorCallback(response) {
    });
  }

しかし、そうすると、パラメーターを渡すことができないようです (「機械学習」クエリを渡すと、検索語を入力しなかったかのように通常のクエリが返されます)

私はすでにjsonpも試しました...

4

1 に答える 1