У меня есть следующий вызов ajax, где я передаю данные в формате JSON, и когда этот код выполняется, я получаю приведенную ниже ошибку, я показал Console.log (data_cp) ниже, и я подтверждено его в http://jsonlint.com/ и это подтверждено вход, что я здесь отсутствует, как исправить эту ошибку, я посмотрел на другие должности, как json parsing error syntax error unexpected end of input но не мог понять ...JSON SyntaxError: Неожиданный конец ввода
$.ajax({
dataType: "json",
type: "POST",
contentType: "application/json",//note the contentType defintion
url: "scripts/cherrypick.py",
data: JSON.stringify(data_cp),
//data: data_cp,
error : function (xhr, ajaxOptions, thrownError){
alert(xhr.status);
alert(thrownError);
},
success: function(message){
console.log("cherypick sucess");
}
Serverside питон скрипт: -?
#!/usr/bin/python
import os
import sys
import json
print "Content-type: application/json\n\n"
...............
...............
def main():
result = {'success':'true','message':'The Command Completed Successfully'}
cherrypicklist = []
cherrypickfaillist = []
myjson = json.load(sys.stdin)
gerritlist = myjson['gerrits']
resource = r'buildserver'
buildlocation = r'cd /local/mnt/workspace/user/buildlocation ; '
for gerrit in gerritlist:
cmd = buildlocation
project,ref = fetchgerritproject(gerrit, connection=None)
proj_path = getprojectpath(project)
cmd += 'cd ' + proj_path + ' ;'
new_cmd = ' gknife am-or-cp ' + gerrit
pick_cmd = cmd + new_cmd
errorlist =''
errorlist = cherrypick(resource,pick_cmd)
if len(errorlist) <= 2:
cherrypicklist.append(gerrit)
else:
chk_cmd = cmd + ' git checkout -f'
connection = ssh_connect(resource)
errorlist = execute_command(connection,chk_cmd)
cherrypickfaillist.append(gerrit)
for gerrit in cherrypicklist:
cmd = buildlocation
project,ref = fetchgerritproject(gerrit, connection=None)
proj_path = getprojectpath(project)
cmd += ' cd ' + proj_path + ' ;'
errorlist = resetgerrit(resource,cmd)
errorlist = execute_command(connection,chk_cmd)
print json.dumps(result)
#return
if __name__ == "__main__":
main()
Ошибка: -
SyntaxError: Unexpected end of input
console.log (data_cp) Выход: -
{"gerrits":["1258565","1279604"]}
Вы получаете ошибку в JQuery или питона сценария? – codesnooker
Не уверен, что я понял, есть ли у вас проблемы с объективом для JSON с javascript, и если да, то что делает с ним вызов ajax? Если вы удалите все, кроме 'JSON.stringify (data_cp)', вы все равно получите ту же ошибку? – adeneo
@codesnooker - Он исходит из 'alert (xhr.status); alert (thrownError) ', если я прокомментирую это, ошибка идет, но вызов не имеет успеха: функция либо – user2125827