Google Cloud Storage의 Signed URL로 업그레이드할 때 CORS 설정
3592 단어 CORSGoogleCloudStorageGCS
GCS에서 SignedUrl을 게시하여 클라이언트 측에서 업그레이드하고 싶습니다.
자주 있는 케이스군요. 우선 SignedUrl을 발행하는 곳은, 이하의 문서를 보고 간단하게 할 수 있었습니다.
그렇게 해서 완성된 URL을 Dropzone.js에 먹여 업로드하려고 했는데 CORS 오류에 걸렸습니다.
이쪽의 기사등도 참고로 했습니다만, 그대로는 업로드할 수 없었습니다.
궁극적으로 성공한 CORS 설정
[
{
"origin": ["https://example.com"],
"responseHeader": ["content-type", "cache-control","x-requested-with"],
"method": ["PUT"],
"maxAgeSeconds": 3600
}
]
이번 클라이언트 측에서는 PUT 밖에 없기 때문에, GET 등은 넣고 있지 않습니다만 기호로 추가해 주세요. 당초 Content-type만을 responseHeader에 세트 하고 있었습니다만, 그것이라고 안 되었습니다.
Preflight 요청의 요청 헤더를 살펴보면 다음 헤더를 요청했으므로 추가했습니다.
그게 좋지 않아.
그것만이라면 왠지 CORS 에러가 나와 머리를 안고 있었습니다만, github의 issue등을 참고로, 명시적으로 Content-type을 세트 한다고 했다고 했습니다.
# Dropzoneのoptionに追加
~そのほかのオプション~,
sending: function(file, xhr) {
var _send = xhr.send;
xhr.setRequestHeader("Content-type","application/octet-stream");
xhr.send = function() { // そもそもGCSにアップするときのハック
send.call(xhr, file);
}
},
아무래도, CORS 에러가 아닌 에러에서도 CORS의 에러로서 브라우저에 나와 버리는 것 같습니다.
Reference
이 문제에 관하여(Google Cloud Storage의 Signed URL로 업그레이드할 때 CORS 설정), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/ku_suke/items/365f81d71dd7065b83ed
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
[
{
"origin": ["https://example.com"],
"responseHeader": ["content-type", "cache-control","x-requested-with"],
"method": ["PUT"],
"maxAgeSeconds": 3600
}
]
이번 클라이언트 측에서는 PUT 밖에 없기 때문에, GET 등은 넣고 있지 않습니다만 기호로 추가해 주세요. 당초 Content-type만을 responseHeader에 세트 하고 있었습니다만, 그것이라고 안 되었습니다.
Preflight 요청의 요청 헤더를 살펴보면 다음 헤더를 요청했으므로 추가했습니다.
그게 좋지 않아.
그것만이라면 왠지 CORS 에러가 나와 머리를 안고 있었습니다만, github의 issue등을 참고로, 명시적으로 Content-type을 세트 한다고 했다고 했습니다.
# Dropzoneのoptionに追加
~そのほかのオプション~,
sending: function(file, xhr) {
var _send = xhr.send;
xhr.setRequestHeader("Content-type","application/octet-stream");
xhr.send = function() { // そもそもGCSにアップするときのハック
send.call(xhr, file);
}
},
아무래도, CORS 에러가 아닌 에러에서도 CORS의 에러로서 브라우저에 나와 버리는 것 같습니다.
Reference
이 문제에 관하여(Google Cloud Storage의 Signed URL로 업그레이드할 때 CORS 설정), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/ku_suke/items/365f81d71dd7065b83ed
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
# Dropzoneのoptionに追加
~そのほかのオプション~,
sending: function(file, xhr) {
var _send = xhr.send;
xhr.setRequestHeader("Content-type","application/octet-stream");
xhr.send = function() { // そもそもGCSにアップするときのハック
send.call(xhr, file);
}
},
Reference
이 문제에 관하여(Google Cloud Storage의 Signed URL로 업그레이드할 때 CORS 설정), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/ku_suke/items/365f81d71dd7065b83ed텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)