У меня есть HTML-код, который вызывает код Javascript «map_stations.js». Map_stations.js использует широта/долгота координаты из master_file.csv разместить несколько маркеров на карте Google и добавить обработчики событий к ним:JSON Сообщение от JQuery до Python Неудачно
function mapStations(map) {
$.get('master_file.csv',function(data) {
getStations(data,map)
});
}
function getStations(data,map) {
...
var marker = new google.maps.Marker({
position: latlng,
map: map
});
google.maps.event.addListener(marker,'click',function() {
$.getScript('plot.js', function() {})
})
...
}
В plot.js, я в настоящее время редактирования кода на Python с использованием эхозапросы Ajax и получить какой-то ответ:
$.ajax({
url: '/pycode/etsurge.py',
type'post',
dataType:'json',
data: JSON.stringify({'key1':'value1'}),
success: function(response){alert('hi');
makePlot(response.data);}
map_stations.js успешно называет makePlot(), если я вынимаю вызов Ajax, так что я знаю, что эти два сценария работы. Это просто моя неспособность правильно кодировать вызов Ajax, вызывающий проблемы. Вот код Python:
import sys
import json
import cgi
fs = cgi.FieldStorage()
result = {}
result['success'] = True
d = {}
for k in fs.keys():
d[k] = fs.getvalue(k):
result['data'] = d
sys.stdout.write('Content-Type: application/json\n\n')
sys.stdout.write(json.dumps(result))
sys.stdout.close()
код Python продолжает делать другие вещи, и я проверил, чтобы убедиться, что он работает без ошибок. Он печатает пустой вывод из приведенных выше команд, когда я запускаю его сам по себе.
Я скопировал вышеуказанный код Ajax/Json непосредственно из here, однако я не могу получить успешный вызов Ajax. Может ли это иметь какое-то отношение к вложению $ .ajax внутри $ .getScript в $ .get? Если да, то как это исправить? Если нет, что еще это может быть?
У вас ошибка 500? Я бы проверял журналы вашего сервера. Эти проблемы могут быть больно отлаживать, и они могут включать конфигурацию сервера в качестве вашего фактического кода. – BrenBarn
@BrenBarn, спасибо. Я поговорю с начальником об этом и посмотрю, что мы находим (у меня нет полных прав на просмотр журналов, это было бы слишком просто). –