如何解决网络故障网:: ERR_NAME_NOT_RESOLVED

时间:2016-03-06 14:59:49

标签: javascript amazon-web-services amazon-s3 aws-sdk

enter image description here我正在向AWS发送Get请求。通过浏览器(Javascript)获取存储桶列表。我收到以下错误:

  

无法加载资源:net :: ERR_NAME_NOT_RESOLVED。   当我将区域留空时,我会收到以下错误。   请参阅上面的屏幕截图,了解我遇到的错误。

这是我的代码:

<!DOCTYPE html>
<html>
    <head>

        <script src="https://sdk.amazonaws.com/js/aws-sdk-2.2.41.min.js"></script>

    </head>
    <body>

        <div id="status"></div>
        <ul id="objects"></ul>
    </body>

    <script type="text/javascript">
    AWS.config.update({accessKeyId: 'key', secretAccessKey: 'GwP/secretkey/XkoAd89kGs'});
        // Configure your region
        AWS.config.region = 'US Standard';

        var bucket = new AWS.S3({params: {Bucket: 'rentonclick'}});
    bucket.listObjects(function (err, data) {
        if (err) {
            console.log('error',err);
        } else {
            document.getElementById('status').innerHTML =
                'Loaded ' + data.Contents.length + ' items from S3';
            for (var i = 0; i < data.Contents.length; i++) {
                document.getElementById('objects').innerHTML +=
                    '<li>' + data.Contents[i].Key + '</li>';
            }
        }
    });

    </script>

</html>

我也在分享这个傻瓜 - https://plnkr.co/edit/uw9j9tpfvJ4cRqjbF7nC?p=preview

3 个答案:

答案 0 :(得分:2)

您的Amazon AWS区域似乎无效。

请在您的Amazon AWS信息中心中查找您所在的地区。它看起来应该是这样的。

AWS.config.region = 'us-east-1';

古德勒克。

答案 1 :(得分:1)

我们需要像这样配置CORS - 这对我有用。

<?xml version="1.0" encoding="UTF-8"?>
<CORSConfiguration xmlns="http://s3.amazonaws.com/doc/2006-03-01/">
    <CORSRule>
        <AllowedOrigin>*</AllowedOrigin>
        <AllowedMethod>HEAD</AllowedMethod>
        <AllowedMethod>GET</AllowedMethod>
        <AllowedMethod>PUT</AllowedMethod>
        <AllowedMethod>POST</AllowedMethod>
        <AllowedMethod>DELETE</AllowedMethod>
        <ExposeHeader>ETag</ExposeHeader>
        <AllowedHeader>*</AllowedHeader>
    </CORSRule>
</CORSConfiguration>

答案 2 :(得分:0)

当我使用vue axio时,例如:

var config = {
   site: 'http://192.168.0.71:9000/doapi/',
}
export const API_ROOT = 'http://'.concat( config.site)
did you find something wrong: API_ROOT = 'http://'+ 'http://192.168.0.71:9000/doapi/';

'http://'已宣布两次。删除它。确定