我已经在Angular 4应用程序中实现了Froala编辑器。我尝试将图像上传到AWS S3,但收到CORS错误。 这是我的文件。
服务器端(用于生成签名):
'use strict';
var FroalaEditor = require('../../node_modules/wysiwyg-editor-node-
sdk/lib/froalaEditor.js');
module.exports = function(server) {
var router = server.loopback.Router();
router.get('/api/get_signature', function(req, res) {
var configs = {
bucket: 'bucket',
region: 's3',
// The folder where to upload the images.
keyStart: 'email',
// File access.
acl: 'public-read',
// AWS keys.
accessKey: 'xxxxxxx',
secretKey: 'xxxxxxxxxx'
}
var s3Hash = FroalaEditor.S3.getHash(configs);
res.send(s3Hash);
});
server.use(router);
}
这是我的角度组件文件:
//initialize froala after getting the signature
public initialize(initControls) {
this.froala = initControls;
this._RestService.getEditorSignature().subscribe(
d => {
this.editorOptions['imageUploadToS3'] = d;
this.froala.initialize();
});
}
这是我的Cors配置:
<CORSConfiguration>
<CORSRule>
<AllowedOrigin>http://localhost:4200</AllowedOrigin>
<AllowedMethod>GET</AllowedMethod>
<AllowedMethod>POST</AllowedMethod>
<AllowedMethod>PUT</AllowedMethod>
<MaxAgeSeconds>3000</MaxAgeSeconds>
<AllowedHeader>Authoriz</AllowedHeader>
</CORSRule>
</CORSConfiguration>
我也尝试在中使用“ *”,但仍然无法正常工作。 谁能把我朝正确的方向?
答案 0 :(得分:1)
实际上,一切正常。我将区域从s3更改为ap-south-1。 我误判了铲斗区域。