Междоменное решение поставщика запросов web3.js - PullRequest
0 голосов
/ 09 января 2019

Кросс-доменное решение провайдера запросов web3.js, этот вопрос об эт.

Я использовал обратный прокси-сервер nginx для решения междоменных проблем , но web3.js request https://xxx.xxx/5b44529e903c4ebf9d60e4d01c965489 бросает

Uncaught Error: Can't autodetect provider for "xxx.xxx/5b44529e903c4ebf9d60e4d01c965489""

Междоменная конфигурация nginx выглядит следующим образом

====================================== nginx start ============= ==

location /5b44529e903c4ebf9d60e4d01c965489{

if ($request_method = 'OPTIONS') {
    add_header 'Access-Control-Allow-Origin' '*';
    add_header 'Access-Control-Allow-Methods' 'GET, POST, OPTIONS';
    add_header 'Access-Control-Allow-Headers' 'DNT,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Range';

    add_header 'Access-Control-Max-Age' 1728000;
    add_header 'Content-Type' 'text/plain; charset=utf-8';
    add_header 'Content-Length' 0;
    return 204;
 }
 if ($request_method = 'POST') {
    add_header 'Access-Control-Allow-Origin' '*';
    add_header 'Access-Control-Allow-Methods' 'GET, POST, OPTIONS';
    add_header 'Access-Control-Allow-Headers' 'DNT,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Range';
    add_header 'Access-Control-Expose-Headers' 'Content-Length,Content-Range';
 }
 if ($request_method = 'GET') {
    add_header 'Access-Control-Allow-Origin' '*';
    add_header 'Access-Control-Allow-Methods' 'GET, POST, OPTIONS';
    add_header 'Access-Control-Allow-Headers' 'DNT,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Range';
    add_header 'Access-Control-Expose-Headers' 'Content-Length,Content-Range';
 }

proxy_pass https://mainnet.infura.io/v3/5b44529e903c4ebf9d60e4d01c965489;
}

===================== nginx end ================

код web3.js

=================== Запустите web3.js ============

import data from './abi'
import Web3 from 'web3';
export default {
    install: function (Vue, options) {
         var web3 = window.web3;
        var contract = '';
        //web3 = new Web3("https://mainnet.infura.io  /v3/5b44529e903c4ebf9d60e4d01c965489");
        web3 = new Web3("www.xxx.xxx/5b44529e903c4ebf9d60e4d01c965489");
        contract = new web3.eth.Contract(data.abi, data.address);
        Vue.prototype.infuraContract = contract;
        Vue.prototype.infuraWeb3 = web3;
        //Web3 version "web3": "^1.0.0-beta.36";
    }
}

=================== web3.js end ==================

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...