我在将以太坊与我的网站集成时遇到问题。
1)以下脚本指定我需要的文件。正在更改的文件是 yourCouncil.html,我们需要的文件在 dirs bignumber 和 dist 中。
root@cloud-vm-45-149:/data/project/first_mvp/poll/templates/poll# ls
#about.html# connection.html council_login.html~ img logout.html~ thankYou.html
about.html connection.html~ councilView.html landingPage.html old_files thankYou.html~
about.html~ contractorView.html dist landingPage.html~ #rating.html# to_integrate
bignumber contractorView.html~ feedback.html login_style1.css survey_details.html yourCouncil.html
#connection.html# council_login.html feedback.html~ logout.html survey.html yourCouncil.html~
root@cloud-vm-45-149:/data/project/first_mvp/poll/templates/poll# emacs yourCouncil.html
包含这些的代码是
<!-- web3 scripts -->
<script type = "text/javascript" src="dist/web3-light.js"></script>
<script type = "text/javascript" src="bignumber/bignumber.js"></script>
错误信息是
Not found: /your_council/dist/web3-light.js
Not found: /your_council/bignumber/bignumber.js
我觉得很奇怪,因为错误消息显示的路径与我指定的路径不同。
2) 由于我尝试集成以太坊,因此 JavaScript 代码似乎没有被完整执行。我包括以下代码:
<script type="text/javascript">
var Web3 = require('web3');
var web3 = new Web3();
web3.setProvider(new web3.providers.HttpProvider("http://146.169.45.149:9002"));
var mining = web3.eth.mining;
document.getElementById("Mining").innerText = "Test";
</script>
</body>
document.getElementById("Mining").innerText = "Test";
不工作。
它指的是
<p id="Mining"></p>
我也觉得这很奇怪。我发现如果我将 更改document.getElementById("Mining").innerText = "Test";
为脚本标记中的第一行,它就可以工作。
我正在使用火狐。如果有人可以对此有所了解,将不胜感激。
已解决:我正在使用 Django。将 js 文件移动到我的静态文件夹中并在“/static/bignumber.js”中引用它们解决了这个问题。