webservice调用不断返回json

时间:2013-11-19 20:04:50

标签: web-services

我只是想测试一个简单的web服务的简单ajax调用。我正在使用.net 4,iis 6.我的网络服务代码看起来像这样......

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Services;
using System.Web.Script.Services;
using System.Web.Script.Serialization;

namespace ABCNamespace    {
[WebService(Namespace = "http://tempuri.org/")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
[System.ComponentModel.ToolboxItem(false)]
[ScriptService]
public class MyService : System.Web.Services.WebService
{
    [WebMethod]
    [ScriptMethod(ResponseFormat = ResponseFormat.Json)]
    public string HelloWorld()
    {
        return new JavaScriptSerializer().Serialize("Hello World");
    }
}
}

我的电话看起来像这样

$.ajax({
            type: "POST",
            contentType: "application/json; charset=utf-8",
            url: "../../MyService.asmx/HelloWord",
            data: "{}",
            dataType: "json",
            success: function () { alert('done'); },
            error: function(XMLHttpRequest, textStatus, errorThrown) { 
                alert("Status: " + textStatus); alert("Error: " + errorThrown); 
            }
        });

我一直得到500错误,仔细看后,我得到一个字符串而不是json数据。我认为如果纠正这一点,它将解决我的问题。但是,我无法让它返回json数据。

这是通过调用我的webmethod

进行的响应检查
 <?xml version="1.0" encoding="UTF-8"?>
 <string xmlns="http://tempuri.org/"> "Hello World" </string>

注意:请忽略我在我的网址中使用../../而不是resolveURL这一事实。这仅用于快速简单的测试目的。我也玩web.config处理程序,没有运气。不确定我错过了什么......

0 个答案:

没有答案