1

다음과 같은 공개 Google 드라이브 파일이 있습니다. https://docs.google.com/uc?id=0B8G77eDgeMdwMmkwcnA5eUV2M0U&export=downloadChrome 확장 프로그램에서 공개 Google 드라이브 파일을 다운로드하는 방법은 무엇인가요?

Chrome 확장 프로그램에서 파일을 다운로드하고 싶습니다.

이 URL을 확장 프로그램 매니페스트의 "사용 권한"요소에 추가했습니다. 파일을 다운로드하려고 할 때 일부 리디렉션이 있는데 모두 추가하려고했습니다. "https : //*.docs.googleusercontent. 내가 벌써 다운로드를 허용 한 것

XMLHttpRequest cannot load https://docs.google.com/nonceSigner?nonce=s35adai1lp052&continue=https://do…Ddownload%26h%3D16653014193614665626&hash=inkfclb76vcru6uuoqkfp274hk5joqk9. No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'null' is therefore not allowed access. 

: 나는 파일을 다운로드하려고하면 COM /는 ","https://docs.google.com/ ","http://docs.google.com/ ","https://accounts.google.com/ ","https://www.google.com/는 "

크롬이 오류를 반환 문제의 URL

<all_urls> 권한을 추가하면 다운로드가 성공합니다.

어떤 권한을 추가해야 하나? 미리 감사드립니다. 의 호스트 부분에

doc-0c-80-docs.googleusercontent.com

첫 번째 부분은 아마 변수, 그리고 와일드 카드 :

+0

URL 끝에 '*'을 추가해야 할 수 있습니다 (예 :'https : // www.google.com/* '). . 현재 사용 권한은 해당 도메인의 리소스가 아닌 정확한 URL *에만 적용될 수 있습니다. – apsillers

+0

죄송합니다, 그 중 하나가 작동하지 않습니다, 그냥 그것을 시도했다. Chrome은 요청 된 요청으로 시작하는 모든 URL이 허용된다고 가정합니다. 제안 해 주셔서 감사합니다! – joaomgcd

+0

다른 가능한 생각 : URL이 허용되지 않은 출처로의 '301'또는 '302'리디렉션을 투명하게 수행 할 수 있습니다. ''는이 가상의 리디렉션을 허용하지만 그 목록은 그렇지 않습니다. Dev Tools에서 네트워크 로그를 확인하고 해당 URL이 리디렉션되는지 확인하십시오. – apsillers

답변

3

예를 wget에 대한 사용 및보고 리디렉션을보고, 당신은 마지막 호스트가 같은 인 것을 알 수 있습니다 URL은 호스트 이름의 전체 부분에만 일치 할 수 있습니다. 그래서 당신은 당신의 매치 패턴에 다음을 추가해야합니다 :

*.googleusercontent.com

1

당신은 드라이브의 파일에 액세스하려면 적어도 다음의 최소 필요합니다

  • * : //drive.google.com/*
  • * : //*.googleusercontent.com/*