Google应用程序引擎JSON/AJAX不工作
以下是我的JS代码:Google应用程序引擎JSON/AJAX不工作,ajax,json,google-app-engine,python-2.7,Ajax,Json,Google App Engine,Python 2.7,以下是我的JS代码: <script> $("#comments").click(function(event) { $.ajax({ type: "GET", url: '/localhost:8080/comment', data: JSON.stringify( {
<script>
$("#comments").click(function(event) {
$.ajax({
type: "GET",
url: '/localhost:8080/comment',
data: JSON.stringify(
{
'name': 'anon',
'subject': 'MY COMMENTS',
}),
contentType: 'application/json',
success: function(data,textStatus, jqXHR) {
console.log('POST response: ');
console.log(data);
}
});
});
</script>
我得到错误404资源找不到。仔细研究后,localhost出现了一些问题。因此,我尝试使用JSONP,如下所示:
<script>
$("#comments").click(function(event) {
$.ajax({ // ajax call starts
url: "localhost:8080/comment", //
type: "GET",
data: JSON.stringify(
{
'name': 'anon',
'subject': 'MY COMMENTS',
}),
dataType: "jsonp", // Choosing a JSON datatype
success: function(data,textStatus,jqXHR)
{
console.log('POST response: ');
console.log(data);
}
});
});
</script>
$(“#注释”)。单击(函数(事件){
$.ajax({//ajax调用开始
url:“localhost:8080/comment”,//
键入:“获取”,
数据:JSON.stringify(
{
'name':'anon',
“主题”:“我的评论”,
}),
数据类型:“jsonp”,//选择JSON数据类型
成功:函数(数据、文本状态、jqXHR)
{
log('POST response:');
控制台日志(数据);
}
});
});
这仍然不起作用。。。我得到“没有可以解码的JSON对象”错误。
我尝试用JSON.load替换JSON.loads。。。这仍然是错误的
有人能告诉我是什么问题吗
当您使用ajax执行
GET
请求时,请提前感谢mil,因为您正在使用url参数。因此请求中没有正文。
制作一个
POST
并将您的get()
更改为POST()
如果项目中有app.yaml文件,则应编辑该文件,如果没有,则添加一个
将此代码添加到您的文件(app.yaml)
-url:/comment
脚本:
您可以在这里看到更完整的app.yaml文档,用于python
显然,Caps Lock键也不是。测试从dev_appserver.py Web服务器到自身的json/ajax调用应该不会有问题,因为它不会是跨域调用。您确定
$.ajax
url正确吗?试试http://localhost:8080/comment
或/comment
。最后一个将根据运行脚本的页面的url而更改。请参阅
<script>
$("#comments").click(function(event) {
$.ajax({ // ajax call starts
url: "localhost:8080/comment", //
type: "GET",
data: JSON.stringify(
{
'name': 'anon',
'subject': 'MY COMMENTS',
}),
dataType: "jsonp", // Choosing a JSON datatype
success: function(data,textStatus,jqXHR)
{
console.log('POST response: ');
console.log(data);
}
});
});
</script>
-url: /comment
script: <url-to-the-server-side-script>