我正在尝试设置CloudSearch。一开始我用他们的演示数据集(“IMDB”)试过了,一切都很完美。在
然后我创建了一个新域来将数据导出到其中。但是所有连接到新域的尝试都会导致EndpointConnectionError异常。我尝试了有索引和没有索引,上传和获取文档,但都有相同的例外。在
复制问题的简单代码:
import boto3
cloudsearch = boto3.client('cloudsearch') # we store credentials in ~/.aws/
endpoint_url = cloudsearch.describe_domains(DomainNames=['DOMAINNAME',])['DomainStatusList'][0]['SearchService']['Endpoint']
cloudsearchdomain = boto3.client('cloudsearchdomain', endpoint_url='https://%s' % (endpoint_url,))
result = cloudsearchdomain.search(query='anything')
print result
当DOMAINNAME
是带有IMDB demo数据集的域时,这段代码运行得很好,但是一旦我将其切换到新的域名,它就开始抛出以下异常:
问题是由于缺少访问策略造成的。当您创建演示数据集而不通知它时,AWS似乎自动为域创建策略。所以第一次域访问策略是由AWS创建的,我对此一无所知。在
相关问题 更多 >
编程相关推荐