如何将异步请求同步化 急求!!

qzyf1992 2015-11-17 02:22:45
     wx.config(data);

wx.ready(function () {
wx.onMenuShareTimeline({
title: base64decodeToStr(_title),
link: _link,
imgUrl: _imgUrl,
success: function (res) {
closeLayer();
if (_isShareNext == "0") {
userShare();
}
else {
shareLayer();
}
//window.location.href = _link;
}

}
);

在调用微信分享功能的时候存在这样一个问题 注册分享按钮的事件需要先调 wx.config方法发送请求去微信服务器那边验证,然后再回调函数中注册事件,但是现在的问题就是有些客户网速较慢 在这个异步请求还没走回调的时候,就去点击微信分享所以我想将异步请求同步化但是这段代码实现不了这个功能

<script src="~/script/jquery-1.11.3.min.js"></script>
<script>
var flag = false;
$.ajax({
type: "post",
url: "../Home/IndexAjax",
async: false,
success: function (obj) {
alert(obj);
flag = true;
}

});

</script>
<script>
while (flag == false) {

}

</script>

@{
ViewBag.Title = "Index";
}

<h2>Index</h2>


道理我懂js事单线程的可是有没有什么办法让异步请求同步化呢 急求
...全文
254 4 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
控制不了。。微信右上角那个分享是不理会api是否加载完毕的,微信也不提供同步加载功能
天际的海浪 2015-11-17
  • 打赏
  • 举报
回复
最好还是不要用同步的,在网速较慢时,同步请求会让浏览器页面进入假死的无响应状态,对用户的体检更不好。 你应该是在异步请求前禁止用户点击微信分享,并且在页面上给用户个提示,当请求完成后再隐藏提示和解除禁止点击。
qzyf1992 2015-11-17
  • 打赏
  • 举报
回复
引用 1 楼 sinat_31535993 的回复:
async:false
微信的接口 查遍了文档没有 同步调用的方式
sinat_31535993 2015-11-17
  • 打赏
  • 举报
回复
async:false

87,997

社区成员

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

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