discuz手机版发帖提示“网络出现问题,请稍后再试”

大家好,我是网创有方。今天分享一个discuz发帖报错的问题。

问题描述:discuz手机网页端发帖提示"网络出现问题,请稍后再试",但是实际上帖子已经发布成功。

本次记录下分析过程:

第一步:打开宝塔,找到站点文件,通过提示词搜索对应文件,查看相应代码。

复制代码
var myform = document.getElementById('postform');
var formdata = new FormData(myform);
$.ajax({
type:'POST',

url:form.attr('action') + '&geoloc=' + postlocation + '&handlekey='+form.attr('id')+'&inajax=1',
data:formdata,
cache:false,
contentType:false,
processData:false,
dataType:'xml'
})
.success(function(s) {
popup.open(s.lastChild.firstChild.nodeValue);
})
<!--.error(function() {-->
<!--popup.open('网络出现问题,请稍后再试', 'alert');-->
<!--});-->
.error(function(xhr, status, error) {  
    console.error('AJAX请求失败:', status, error);  
    console.error('HTTP状态码:', xhr.status);  
    console.error('响应文本:', xhr.responseText);  
    popup.open('网络出现问题,请稍后再试'+'status状态:'+status+'xhr.status状态:'+xhr.status+'响应文本:'+xhr.responseText, 'alert');  
});

return false;
});
$(document).on('click', '.del', function() {
var obj = $(this);
$.ajax({
type:'GET',
url:'forum.php?mod=ajax&action=deleteattach&inajax=yes&aids[]=' + obj.attr('aid') + (obj.attr('up') == 1 ? '&tid=<?php echo $postinfo['tid'];?>&pid=<?php echo $postinfo['pid'];?>&formhash=<?php echo FORMHASH;?>' : ''),
})
.success(function(s) {
obj.closest('li').remove();
})
<!--.error(function() {-->
<!--popup.open('网络出现问题,请稍后再试', 'alert');-->
<!--});-->
.error(function(xhr, status, error) {  
    console.error('AJAX请求失败:', status, error);  
    console.error('HTTP状态码:', xhr.status);  
    console.error('响应文本:', xhr.responseText);  
    popup.open('网络出现问题,请稍后再试'+'status状态:'+status+'xhr.status状态:'+xhr.status+'响应文本:'+xhr.responseText, 'alert');  
});

发现提示语存在于ajax网络失败请求回调中,但是光看它提示的log,发现不出来问题。

于是在2处提示的地方添加了下面的调试代码,并且注释掉了原代码。

复制代码
.error(function(xhr, status, error) {  
    console.error('AJAX请求失败:', status, error);  
    console.error('HTTP状态码:', xhr.status);  
    console.error('响应文本:', xhr.responseText);  
    popup.open('网络出现问题,请稍后再试'+'status状态:'+status+'xhr.status状态:'+xhr.status+'响应文本:'+xhr.responseText, 'alert');  
});

第二步:关闭相应插件

在重新发帖后,提示报错来源于一个叫做西山SEO的插件。到管理中心关闭插件后重新发帖成功。

相关推荐
XiaoLeisj2 天前
Android 短视频播放详情页实战:从播放器模块拆分、Media3 与 FlowHelper 接入,到 ViewPager 高度适配和详情数据联动
android·okhttp·音视频·架构设计·flowhelper
阿正的梦工坊2 天前
拦截网络请求:一种更优雅的数据获取方式
网络·okhttp
鬼蛟7 天前
ICAN_PARENT
okhttp
XiaoLeisj8 天前
Android 短视频项目首页开发实战:从广场页广告轮播与网格列表,到发现页分类、播单与话题广场的数据驱动实现
android·okhttp·mvvm·recyclerview·retrofit·databinding·xbanner 轮播
.豆鲨包11 天前
【Android】OkHttp的使用及封装
android·java·okhttp
华科易迅11 天前
Vue通过Ajax获取后台路由信息
vue.js·ajax·okhttp
studyForMokey12 天前
【Android面试】OkHttp & Retrofit 专题
android·okhttp·面试
fLDiSQV1W13 天前
springMVC-HTTP消息转换器与文件上传、下载、异常处理
网络协议·http·okhttp
Ttang2317 天前
Java爬虫:Jsoup+OkHttp实战指南
java·爬虫·okhttp
李庆政37017 天前
OkHttp的基本使用 实现GET/POST请求 authenticator自动认证 Cookie管理 请求头设置
java·网络协议·http·okhttp·ssl