MessengerExtensions.requestCloseBrowser() 不会在桌面上关闭
MessengerExtensions.requestCloseBrowser() won't close in desktop
当我尝试使用此代码关闭 webview 时:
MessengerExtensions.requestCloseBrowser(function success() {}, function failure(err) {
alert('error closing the window: ' + err); // error closing the window:
console.log(err); // doesn't print
window.close();
});
它关闭了 iOS 中的网络视图,但当我从桌面尝试时弹出警告。
我的域已列入白名单,messenger_extensions = true,我从桌面 Messenger 进入页面,但仍然无法正常工作。
我之前遇到过同样的问题,但相反(window 在桌面上关闭,但在 iOS 上不关闭),同时尝试使用 fetch(),这个问题在开始使用 $. ajax()
之前 MessengerExtensions.requestCloseBrowser() 是从 fetch 的承诺中调用的,现在是从 ajax 的成功函数中调用的。
我不得不用 ajax 切换抓取,因为它在 iOS
上不起作用
有什么建议吗?
一天后,错误代码 2071011 再次出现,仅在桌面浏览器中出现。
我设法通过使用 window.top.close(); 找到了解决问题的方法;当 MessengerExtensions.requestCloseBrowser() 失败时
它在 Chrome 上执行相同的技巧并在 Edge
上关闭之前询问用户
window.extAsyncInit = function() {
MessengerExtensions.requestCloseBrowser(function success() {
window.close(); // webview closed
}, function error(err) {print ('an error occured');}
);
};
来自 https://developers.facebook.com/docs/messenger-platform/webview/extensions、
上的文档
window.extAsyncInit() will be called when the Messenger Extensions JS
SDK is done loading. You can use this as a trigger to call other
functions available in the SDK.
当我尝试使用此代码关闭 webview 时:
MessengerExtensions.requestCloseBrowser(function success() {}, function failure(err) {
alert('error closing the window: ' + err); // error closing the window:
console.log(err); // doesn't print
window.close();
});
它关闭了 iOS 中的网络视图,但当我从桌面尝试时弹出警告。 我的域已列入白名单,messenger_extensions = true,我从桌面 Messenger 进入页面,但仍然无法正常工作。
我之前遇到过同样的问题,但相反(window 在桌面上关闭,但在 iOS 上不关闭),同时尝试使用 fetch(),这个问题在开始使用 $. ajax() 之前 MessengerExtensions.requestCloseBrowser() 是从 fetch 的承诺中调用的,现在是从 ajax 的成功函数中调用的。
我不得不用 ajax 切换抓取,因为它在 iOS
上不起作用有什么建议吗?
一天后,错误代码 2071011 再次出现,仅在桌面浏览器中出现。 我设法通过使用 window.top.close(); 找到了解决问题的方法;当 MessengerExtensions.requestCloseBrowser() 失败时 它在 Chrome 上执行相同的技巧并在 Edge
上关闭之前询问用户window.extAsyncInit = function() {
MessengerExtensions.requestCloseBrowser(function success() {
window.close(); // webview closed
}, function error(err) {print ('an error occured');}
);
};
来自 https://developers.facebook.com/docs/messenger-platform/webview/extensions、
上的文档window.extAsyncInit() will be called when the Messenger Extensions JS SDK is done loading. You can use this as a trigger to call other functions available in the SDK.