我正在尝试使用IronPython in the browser并尝试导入外部python脚本:
<script src="http://gestalt.ironpython.net/dlr-latest.js" type="text/javascript">
</script>
...
<script type="application/python" src="test.py" defer="true"></script>
<script type="application/python">
import test
test.Hello()
</script>
import语句似乎成功运行(如果test.py不存在,则会失败)。但是,它似乎没有加载文件的内容。 test.py包含以下代码:
document.testing1.innerHTML = 'Hello from test.py'
def Hello():
window.Alert('Hello from test.py')
事实上,它似乎与test.py中的内容没有任何区别。它不会因语法错误而抱怨。
在IronPython控制台中,您可以从浏览器中访问,同样的问题发生:
>>> import test
>>> dir(test)
['__builtins__', '__doc__', '__file__', '__name__', '__package__']
>>> test.Hello()
Traceback (most recent call last):
at <module> in <string>, line 1
at <module> in <string>, line 0
AttributeError: 'module' object has no attribute 'Hello'
我做错了什么?
更新:它适用于新的IronPython 2.7 beta 1 VS2010集成,它启动了“Chiron”测试Web服务器,但不是在我使用WebMatrix时。我想知道在WebMatrix上为.py文件配置的mime类型是否存在问题?
答案 0 :(得分:0)
我终于搞定了。导致问题的是MIME类型。我正在使用WebMatrix进行测试。我添加了一个带有以下xml的web.config文件来解决问题:
<configuration>
<system.webServer>
<staticContent>
<mimeMap fileExtension=".py" mimeType="text/python" />
</staticContent>
</system.webServer>
</configuration>