javascript - ajax该如何向接口传一个值或参数?
阿神
阿神 2017-04-11 12:19:04
[JavaScript讨论组]

ajax向接口请求数据,使用的jQuery来实现的ajax,但接口要求先获得一个ID的值。该如何把这个ID的值传过去呢?

window.onload = function() {
var geturl = "http://localhost:8080/DingDongFM/servlet/QueryBuildingsFromLocation";
$.ajax(geturl, {
                    data: {},
                    dataType: 'json', //服务器返回json格式数据
                    type: 'post', //HTTP请求类型
                    contentType: "application/x-www-form-urlencoded; charset=utf-8",
                    timeout: 60000, //超时时间设置为30秒;
                    success: function(data) {
                        var result = JSON.stringify(data);
                        alert(result);
                        //var code = 
                        if(data.ErrorCode == "0") {
                        //数据处理
                        } else {
                            alert("加载数据失败");
                        }
                    },
                    error: function(xhr, type, errorThrown) {
                        alert("请求失败");

                    }
                });
            }

尝试了把id加载url后面也不行,var geturl = "http://localhost:8080/DingDongFM/servlet/QueryBuildingsFromLocation?ID=1001";
把id放在data里也不行,data: {"ID":“1001”},

阿神
阿神

闭关修行中......

全部回复(8)
高洛峰

这个要看后端API的设计。API是怎么接收这个ID参数的,并且接收的JSON格式以及数据类型是什么,靠自己试是不行的。

高洛峰

直接访问 url 能正常返回么

天蓬老师

jq的ajax()参数是这样$.ajax([settings])
settings是配置的集合,也就是对象。
所以你的URL是要写在对象里的。
其次,你想参数再地址后面那就是用get提交。
get提交是放在地址后面,post不是。具体是用post还是get要看后台人员怎么写的。
$.ajax({
url :
type: "get"
data : {
属性(键) : 值
}
})

大家讲道理

这样写id的之就已经传过去了,可能就是后台出了问题。像这样的ajax请求可以使用chrome安装postman这样的插件调试使用很方便。

迷茫

首先后台肯定要给你正确的接口地址嘛。比如你获得的那个id值为ID,然后你再用ajax.

$.ajax({
    url:'地址',
    type:'post',
    dataType:'json',
    data:{'后台给你的接口参数':ID}
})
怪我咯

是不是后台没有设置字段接收这个id

伊谢尔伦

data: JSON.stringify({"ID":“1001”})

天蓬老师

1、楼主的后端是布在自己电脑上的吗? 不然请求接口的地址为什么是下面这种类型

"http://localhost:8080/DingDongFM/servlet/QueryBuildingsFromLocation";

2、 在向后端发请求传递数据参数的时候一般需要做一下字符串处理

data: JSON.stringify({'后台给你的接口参数':ID})

$.ajax(geturl, {
                    data: {},
                    dataType: 'json', //服务器返回json格式数据
                    type: 'post', //HTTP请求类型
                    contentType: "application/x-www-form-urlencoded; charset=utf-8",
                    data:JSON.stringify({'后台给你的接口参数':ID}),
                    timeout: 60000, //超时时间设置为30秒;
                    success: function(data) {
                        var result = JSON.stringify(data);
                        alert(result);
                        //var code = 
                        if(data.ErrorCode == "0") {
                        //数据处理
                        } else {
                            alert("加载数据失败");
                        }
                    },
                    error: function(xhr, type, errorThrown) {
                        alert("请求失败");

                    }
                });
            }
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号