繁体   English   中英

Ajax在asp.net中调用Web服务

[英]Ajax call Web Service in asp.net

加载资源失败:服务器响应状态为500(内部服务器错误)localhost:45562 / WebService1.asmx / btn

WebService无法通过Ajax调用加载,如果我在WebForm.aspx.cs中编写相同的代码,则一切正常

WebForm1.aspx的

$(document).ready(function () {

        $("#btn").click(function () {
            sendAjaxRequest();
        });



        function sendAjaxRequest() {
            $.ajax({
                async: true,
                url: "WebService1.asmx/btn",
                type: "POST",
                data: "{ surname: 'Axakalov', name: 'Sunnatilla' }",
                dataType: "json",
                contentType: "application/json; charset=utf-8",
                success: responseOut,
                error: function (error) {
                    debugger;
                    alert(error);
                }
            });
        };


        function responseOut(response) {
            $("#out").html(response.d);
        }

    });

WebService1.asmx

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

namespace WebApplication9
{
/// <summary>
/// Summary description for WebService1
/// </summary>
[WebService(Namespace = "http://tempuri.org/")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
[System.ComponentModel.ToolboxItem(false)]
// To allow this Web Service to be called from script, using ASP.NET AJAX, uncomment the following line. 
// [System.Web.Script.Services.ScriptService]
public class WebService1 : System.Web.Services.WebService
{

    [WebMethod]
    public string HelloWorld()
    {
        return "Hello World";
    }


    [WebMethod]
    public string btn(string surname, string name)
    {
        return surname + " " + name;
    }

}

}

请帮忙,为什么找不到webservcise1.asmx

考虑到您当时给出了正确的URL。

您需要启用[System.Web.Script.Services.ScriptService]属性:

[System.Web.Script.Services.ScriptService]
public class WebService1 : System.Web.Services.WebService
{   
    [WebMethod]
    public string HelloWorld()
    {
        return "Hello World";
    }

    [WebMethod]
    public string btn(string surname, string name)
    {
        return surname + " " + name;
    }  
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM