我试图从javascript调用一个Web服务方法:
function Search() { var context = new Object; context.Filter = "Test"; SearchService.GetSearch(context, onSuccess, onFailed); } function onSuccess(result) { // userContext contains symbol passed into method var res = document.getElementById("resultsDiv"); res.innerHTML = result; } function onFailed(result) { var res = document.getElementById("resultsDiv"); res.innerHTML = result.get_message(); }
这是Web服务签名:
[WebMethod] public SearchComboBoxItemData[] GetSearch(object context) {
当我使用表单身份验证并允许匿名访问Web服务时,一切正常.
但是,当我对应用程序使用Windows身份验证,但只允许匿名访问Web服务时,从javascript调用Web服务会引发以下错误:
无效的Web服务调用,缺少参数值:'context'.
我注意到的另一件事是它在Firefox中的两种方式都很好.我在IE7上看到错误.
对可能解决方案的任何想法?