首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在safari和移动浏览器上使用infura.io发布CORS

在safari和移动浏览器上使用infura.io发布CORS
EN

Ethereum用户
提问于 2018-09-13 12:32:32
回答 2查看 894关注 0票数 2

当在桌面上使用铬时,连接到infura.io很好,但是当使用safari时,我会遇到CORS问题。此外,移动版本的页面甚至没有加载到设备上。控制台中显示以下消息。

代码语言:javascript
复制
Failed to load resource: Origin http://website.com is not allowed by Access-Control-Allow-Origin.
Fetch API cannot load https://ropsten.infura.io/[ID]/. Origin http://website.com is not allowed by Access-Control-Allow-Origin.

我使用的是亚马逊s3,所以我尝试将CORS配置设置更改为类似的设置,但仍然没有效果。

代码语言:javascript
复制
<?xml version="1.0" encoding="UTF-8"?>
<CORSConfiguration xmlns="http://s3.amazonaws.com/doc/2006-03-01/">
<CORSRule>
    <AllowedOrigin>http://*</AllowedOrigin>
    <AllowedOrigin>https://*</AllowedOrigin>
    <AllowedMethod>GET</AllowedMethod>
    <AllowedMethod>HEAD</AllowedMethod>
    <MaxAgeSeconds>3000</MaxAgeSeconds>
    <AllowedHeader>Authorization</AllowedHeader>
    <AllowedHeader>x-requested-with</AllowedHeader>
    <AllowedHeader>origin</AllowedHeader>
</CORSRule>
</CORSConfiguration>

这是infura.io常见的问题吗?还有什么是我遗漏的吗?

EN

回答 2

Ethereum用户

发布于 2019-04-26 12:31:57

在我的Range7项目中,我遇到了同样的问题,我使用了web3 js版本1.0.0-beta.37“。

一旦将版本降级为web3 1.0.0-beta.34,

它在包括桌面和移动设备(android和ios设备)在内的所有浏览器上运行良好。

此外,如果没有安装,则必须安装“eth”:"0.2.7“。

像下面这样在web3文件中导入.ts,

代码语言:javascript
复制
import Web3 from "web3";

  public web3;

constructor() {
 this.web3 = new Web3(
  new Web3.providers.HttpProvider(environment.transferWeb3ApiUrl)
);
}
票数 1
EN

Ethereum用户

发布于 2018-11-29 08:10:21

我发现以下问题与您前面提到的问题完全相同:

request.withCredentials在web3 1.0.36测试版上添加。

您可以在此提交中找到相关的更改。

希望上面的链接能有所帮助。

票数 0
EN
页面原文内容由Ethereum提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://ethereum.stackexchange.com/questions/58666

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档