所以这真的很奇怪,我不知道我是否忽略了一些愚蠢的东西,或者这里有什么东西:
我正在我大学的Apache服务器上运行CGI脚本,这是代码:
#!/usr/bin/python
import cgi
import cgitb
import sys
import csv
cgitb.enable()
print "Content-Type: application/json"
print
print "Hello World!"
file = open("test.csv", "a")
writer = csv.writer(file)
fs = cgi.FieldStorage()
for key in fs.keys():
# print "%s = %s" % (key, fs[key].value)
writer.writerow((key, fs[key].value))
脚本的目的是我可以使用以下URL访问它:
http://sample.com/run.cgi?param=one¶m=two
脚本会将数据写入服务器上的CSV文件。这非常有效。
问题在于我想从JSON格式的JavaScript / Python代码向服务器发送数据,或者作为JSON字符串从服务器上的Python脚本解析。为了做到这一点,我需要将import json
添加到Python脚本中,对吗?
这就是出错的地方 - 如果我不添加import json
- 它一切正常,我可以通过浏览器访问URL,它会在服务器上写入文件。但是,一旦我添加import json
,从浏览器访问脚本就不起作用了 - 我得到了“500内部服务器错误”。您会认为导入存在问题,但在服务器端运行CGI脚本可以完美地工作......唯一停止工作的是从远程URL /代码激活脚本。
有什么想法吗?