programing

Google API : 클라이언트의 유효한 출처가 아닙니다. URL이 클라이언트 ID 'ID'에 허용되지 않았습니다.

nasanasas 2020. 11. 29. 11:46
반응형

Google API : 클라이언트의 유효한 출처가 아닙니다. URL이 클라이언트 ID 'ID'에 허용되지 않았습니다.


도움이 필요합니다. 내 질문에 대한 답을 찾지 못했습니다. 인터넷 검색을 시도하고 다른 쪽에서 물어 보았지만 답을 찾지 못했습니다.

저는 Google API (Youtube 데이터 API)로 작업하고 있으며 Google 측의 예제 코드를 사용하여 작동하는 코드를 사용하고 있습니다. 스크립트를 시작하려고 할 때 오류가 발생했습니다.

세부 정보 : "클라이언트의 유효한 출처가 아닙니다."MyURL "이 클라이언트 ID"MyID "에 대해 허용되지 않았습니다. https://console.developers.google.com/으로 이동 하여이 출처를 프로젝트의 클라이언트 ID에 허용 목록에 추가하세요. "

오류 : "idpiframe_initialization_failed"

내 웹 사이트를 허용 목록에 추가 한 문제가 승인되었습니다. 나는 무엇이 잘못되었는지 모른다. 내 도메인을 "허용"하려면 어떻게해야합니까 (허용 목록에 있음)

그리고 또 다른 질문입니다. 나는 전에이 질문에 대한 답을 검색하지 않았습니다.

Localhost에서 코드를 사용할 수 있다고 생각합니다. 로컬 호스트 주소 또는 이와 비슷한 것을 허용해야한다고 생각합니다. 그러나 화이트리스트는 작동하지 않습니다.

  • 드림 게이머

같은 문제가 있었고 해결 방법은 다음과 같습니다.

  1. 프로젝트에서 Analytics 및 Google Plus API 활성화
  2. 새 OAUTH 2.0 클라이언트 자격 증명 만들기
    • 추가 공인 자바 스크립트 기원을 아래에 제한 섹션
  3. 새 클라이언트 ID를 사용하십시오.

즐겨.


캐시를 지 웠습니다. 그때 일을 시작했습니다.

Chrome : 설정-> 고급-> 인터넷 사용 기록 삭제-> 캐시 된 이미지 및 파일


캐시 지우기를 시도하면 캐시 / 로컬 저장소에 문제가있을 수 있습니다.


저에게는 Google Analytics와 같은 추가 API를 추가하지 않고도 작동했습니다. 전체 클라이언트 ID를 추가하고 시크릿 창에서 앱을 열어 캐시 저장을 방지하세요. 이미 일반 창에서 앱을 연 경우 1- 앱이 열려있는 모든 탭을 닫습니다. 2- 캐시와 쿠키를 지 웁니다. 크롬에서 설정-> 비밀번호 및 양식-> 인터넷 사용 기록 삭제-> 고급 (탭)-> a) 쿠키 및 기타 사이트 데이터를 선택하고 b) 캐시 된 이미지 및 파일 3-새 시크릿 창을 열고 테스트 앱.


캐시를 지우는 것이 나를 위해 트릭을했습니다.


또한 빠른 시작 예제의 지침을 따랐습니다. 동일한 문제가 발생했으며 여기에서 제안 된 모든 솔루션을 아무 소용이없이 시도하고 상상할 수있는 모든 것을 시도했지만 도움이되지 않았습니다.

마지막으로 마지막 CLIENT_ID에 공백이있는 복사를 확인했습니다 .

  var CLIENT_ID = '44********-*****************.apps.googleusercontent.com ';

이 문제를 해결 (추가 공간 제거)하면 작동했습니다.

이 경우 오류 메시지가 정확하지 않은 것 같습니다. 도움이 되었기를 바랍니다.


내 웹 앱에 대한 로그인을 얻으려고 비슷한 문제가 발생했습니다. 내가 한 일은 Cloud Platform에서 OAuth 클라이언트 ID 사용자 인증 정보를 다시 만드는 것입니다. 이 작업을 수행하고 새 클라이언트 ID를 사용했을 때 모든 것이 잘 작동했습니다. 이전에 문제가 무엇인지 확실하지 않지만 지금은 완벽하게 진행됩니다.

누군가 Google 또는 기타에서 이것을 발견하면 시도하십시오. 그냥 작동 할 수도 있습니다. Ezra Obiwale의 대답은 본질적으로 두 개의 API를 추가 한 직후 새 클라이언트 ID를 생성하기 때문에 설명합니다.

왜 이런 일이 발생하는지에 대한 설명을 아는 사람이 있다면 감사하겠습니다.


방금 똑같은 실수를 저질렀습니다. 공식 빠른 시작 예제를 시도하고 귀하와 동일한 오류 메시지를 받았습니다.

이 예제는 개인적으로 필요한 것보다 훨씬 더 복잡하기 때문에 다소 혼란 스럽습니다. 사용자 로그인에 OAuth를 사용하고 API key. 나와 비슷하고 OAuth를 사용하고 싶지 않고 권한있는 작업없이 일부 Youtube 데이터 만 검색하려는 경우 (예 : 비디오, 채널 또는 재생 목록 만 검색하거나 나열하려는 경우)이 예는 다음과 같습니다. 당신을 위해.

이 솔루션은 단지 제공, 간단 apiKey대신 clientIdgapi.client.init(링크 API 문서 과 같이) :

const apiKey = '<my API key>';

function gooApiInitClient() {
  // Array of API discovery doc URLs for APIs used by the quickstart
  const discoveryDocs = [
    "https://www.googleapis.com/discovery/v1/apis/youtube/v3/rest"
  ];

  return gapi.client.init({
    apiKey,
    discoveryDocs
  });
}

// see: https://developers.google.com/api-client-library/javascript/reference/referencedocs
gapi.load('client', {
  callback: function() {
    // we now have gapi.client! initialize it.
    gooApiInitClient().
      then(() => {
        // we can start using the API here!
        // e.g. gapi.client.youtube.videos.list(...);
      }).then(results => { 
        // use results here....
      });
  }
});

I was having this exact same issue - the solution for me was to go into the API Manager and enable the Analytics API. Not sure what the issue was, but this seems to have fixed it!


I believe this has to do with caching, try to Go to your browser and clear the cache, try: in chrome, > setting > advanced > clear browsing data :>: cached images and files.


One of the reasons why it could not work is exceeded number (100) of logins on certain client ID.

You can visit google API console page and create new Oauth2 client credentials (remember to add your applications URL under Authorized Javascript Origins) and then use it.


I was having the same issues as well until I realized when I copied the client_ID, there was white space in my file, so I removed the white space from the string and everything is working great now.

참고URL : https://stackoverflow.com/questions/43964539/google-api-not-a-valid-origin-for-the-client-url-has-not-been-whitelisted-for

반응형