大神帮忙看看哪错了,get请求怎么始终是返回失败?

肖施主 2018-10-12 08:15:36
大神帮忙看看哪错了,get请求怎么始终是返回失败?
<script type="text/javascript" src="https://lib.baomitu.com/jquery/1.8.3/jquery.min.js" ></script>

<div id="hitokoto"></div>

<script>
function hitokoto() {
$.ajax({
url: 'https://v1.hitokoto.cn/?c=a&encode=text',
type: 'get',
beforeSend: function(xhr) {
$('#hitokoto').html('『加载中...』');
},
success: function(data) {
if (data.status == 'success') {
$('#hitokoto').html('『' + data + '』');
} else {
$('#hitokoto').html('『返回失败』');
}
},
error: function(xhr, textStatus, errorThrown) {
$('#hitokoto').html('『返回错误』');
}
});
}
hitokoto();</script>
...全文
402 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
肖施主 2018-10-19
  • 打赏
  • 举报
回复
好的,已解决,谢谢各位了,这样就行了
<script type="text/javascript" src="https://lib.baomitu.com/jquery/1.8.3/jquery.min.js" ></script>

<div id="hitokoto"></div>

<script>
function hitokoto() {
$.ajax({
url: 'https://v1.hitokoto.cn/?c=a&encode=text',
type: 'get',
beforeSend: function(xhr) {
$('#hitokoto').html('『少女祈祷中...』');
},
success: function(data) {
$('#hitokoto').html('『' + data + '』');
},
error: function(xhr, textStatus, errorThrown) {
$('#hitokoto').html('『跌倒不可怕,可怕的是你一直在地上吃屎不起来!』');
}
});
}
hitokoto();</script>
風灬雲 2018-10-19
  • 打赏
  • 举报
回复

$.ajax({
url: 'https://v1.hitokoto.cn/?c=a&encode=text',
type: 'get',
beforeSend: function(xhr) {
$('#hitokoto').html('『加载中...』');
},
success: function(data) {
console.log(data);//data就是后端接口返回来的全部东西;关于data.status的判断是由后端人员定的规矩;后端没有定就不用判断,直接使用数据就可以了
},
error: function(xhr, textStatus, errorThrown) {
$('#hitokoto').html('『返回错误』');
}
});
涂☀鸦 2018-10-19
  • 打赏
  • 举报
回复
你这个只要成功就会返回给你的 数据,你直接输去就好了,里面不用做判断了! 你下面写了error就是失败的情况!
肖施主 2018-10-19
  • 打赏
  • 举报
回复
引用 8 楼 qq_39391968 的回复:
你成功后返回的数据就只是 一句话 ,更本不是 JOSN 数据格式的!是没办法做判断的!

那怎么写才行啊,大哥?
涂☀鸦 2018-10-19
  • 打赏
  • 举报
回复
你成功后返回的数据就只是 一句话 ,更本不是 JOSN 数据格式的!是没办法做判断的!
Logerlink 2018-10-15
  • 打赏
  • 举报
回复
。。。
data.status不应该是200(成功),404(错误),500(错误)之类的吗
zc_1994 2018-10-15
  • 打赏
  • 举报
回复
如果改成!='success'可以返回数据,说明data.status里面不是success,不知道你这个里面放的是什么,可以打印出来看看,一般status里面返回1,当然要看你实际的啦
肖施主 2018-10-13
  • 打赏
  • 举报
回复
引用 1 楼 jslang 的回复:
看你加载的是绝对地址。跨域了吧。
ajax是不允许跨域加载的。

并不是跨域问题,如果把14行改成
if (data.status !== 'success') {
就能返回数据,说明不是跨域问题,现在不知道哪里的问题
讨厌走开啦 2018-10-13
  • 打赏
  • 举报
回复
把返回的data打出来看看,是不是返回的数据结构和你解析逻辑不一致。
天际的海浪 2018-10-13
  • 打赏
  • 举报
回复
引用 3 楼 a570295535 的回复:
[quote=引用 1 楼 jslang 的回复:] 看你加载的是绝对地址。跨域了吧。 ajax是不允许跨域加载的。
并不是跨域问题,如果把14行改成 if (data.status !== 'success') { 就能返回数据,说明不是跨域问题,现在不知道哪里的问题[/quote] 如果执行了success函数说明前端ajax没有问题,你输出data看看,是不是服务器返回的内容不对。
肖施主 2018-10-13
  • 打赏
  • 举报
回复
引用 2 楼 lqlqlq007 的回复:
把返回的data打出来看看,是不是返回的数据结构和你解析逻辑不一致。

直接返回data有数据没毛病,如果把14行改成
if (data.status !== 'success') {
就能返回数据,逻辑规则我也不懂
天际的海浪 2018-10-12
  • 打赏
  • 举报
回复
看你加载的是绝对地址。跨域了吧。 ajax是不允许跨域加载的。

52,797

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 Ajax
社区管理员
  • Ajax
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧