10
私はサーバー上の画像アップロードに苦労しています。フロントエンドにngFileUploadを使用しています。しかし、私は常に取得クロスドメイン画像アップロード角度+ラベール
「アクセス制御チェックを通過しないプリフライトリクエストへの対応:いいえ 『アクセス制御-起源許可』ヘッダが要求されたリソース上に存在する」
ファイルのアップロードのための角度コード:
var uploadFile = function (file) {
if (file) {
if (!file.$error) {
Upload.upload({
url: baseUrl+'upload',
file: file
}).progress(function (evt) {
var progressPercentage = parseInt(100.0 * evt.loaded/evt.total);
//console.log(evt.total);
}).success(function (data, status, headers, config) {
$timeout(function() {
console.log(data);
console.log(status);
if(status==200)
{
logo_path = data.logo_path;
}
});
});
}
}
};
はLaravelで私はこのようなCORSを設定している:
public function handle($request, Closure $next)
{
header("Access-Control-Allow-Origin: http://localhost:8001/");
// ALLOW OPTIONS METHOD
$headers = [
'Access-Control-Allow-Methods'=> 'POST, GET, OPTIONS, PUT, DELETE',
'Access-Control-Allow-Headers'=> 'Content-Type, X-Auth-Token, Origin'
];
if($request->getMethod() == "OPTIONS") {
// The client-side application can set only headers allowed in Access-Control-Allow-Headers
return Response::make('OK', 200, $headers);
}
$response = $next($request);
foreach($headers as $key => $value)
$response->header($key, $value);
return $response;
}
通常のクロスドメインのPOSTリクエストが正常に動作します。すなわち$ http.post()。私は角度のあるヘッダーのいろいろなバリエーションを試しましたが、どれも役に立ちません。また、OPTIONS要求は200 OKを返しますが、依然としてプリフライト応答失敗メッセージが表示されます。誰でもこの問題をさらにデバッグする方法を教えてもらえますか?追加
「Access-Control-Allow-Origin」もヘッダーに追加してください。 – danial
ヘッダーをリクエストするには?私は助けなかった。 –
応答ヘッダー。 – danial