ASP.NET中的Web服务问题

本文关键字:服务 问题 Web 中的 NET ASP | 更新日期: 2023-09-27 18:21:31

我是ASP.NET中web服务的新手。最近我一直在努力了解它。以下是我的问题。

  1. Web服务项(可以在Visual Studio中添加到项目中的.asmx)只生成XML服务(生成XML输出)?JSON呢?

  2. 当我向我的项目添加一个web引用时,系统会提示我指定一个URL,那必须是什么样的服务?例如,当我输入http://search.twitter.com/search.json?q=twitter-它不起作用(什么都拿不到)。

  3. 创建.asmx服务后,如何通过非.NET技术(如PHP或JavaScript)来使用它?

  4. 如果我要用另一种技术(PHP/ColdFusion)创建一个web服务,那么需要什么才能轻松地将web引用添加到.NET项目中以供使用?

  5. 什么时候放弃创建Web服务(.asmx)并创建通用处理程序(.ashx)?什么是最佳实践?

ASP.NET中的Web服务问题

此处提供了答案:http://forums.asp.net/p/1762729/4808974.aspx/1?p=True&t=634636052163539362

1.当你将web引用(.asmx)添加到你的项目中时,它会生成三个不同类型的扩展文件,它们是reference.cs、.disco和.wsdl。web服务名称和值(如下所示)会添加到项目配置文件中,reference.c是实际生成的代理类,主要用于在客户端调用web服务。

例如:

<applicationSettings>
    <WebApplication3.Properties.Settings>
        <setting name="WebApplication3_localhost_WebService2" serializeAs="String">
            <value>http://localhost:8776/WebService2.asmx</value>
        </setting>
    </WebApplication3.Properties.Settings>
</applicationSettings>

至于JSON,它是一种轻量级的数据交换格式,完全独立于语言。它是一个名称/值对的集合和一个有序的值列表,我们通常使用Jquery来调用JSON web服务和REST服务,并将其contentType设置为"application/JSON;charset=utf-8",dataType设置为"JSON"。

2.通常ASMX Web服务(.ASMX文件)可以使用add-Web-reference添加到消费者项目中,我们最好添加以.ASMX结尾的Web服务的url,类似这样。http://localhost:8776/WebService2.asmx

3.有几种方法可以从非net技术调用.net web服务,可以向web服务发送请求soap消息,有关更多信息,请查看本文。还有一些开发工具提供了一个选项,您可以添加wsdl引用作为VS工具,只需指定WSDLURL,请查看本文。

4.如果你可以在IE浏览器中浏览web服务,那么你可以添加"?"wsdl",然后在VS工具中,您可以将web引用添加到该wsdl url,然后您可以使用该web服务,请查看本文。

5.至于Generic Handler(.ashx),它主要用于以下场景(1) 应用安全机制,(2) URL重写,(3) 筛选发送到IIS的请求中的某些内容。并且它取决于您想要选择web服务或.ashx.的需求

1)对于让json-asmx服务工作的语法,请查看下面的

5) 新的方法是WCF

关于问题4,我使用了来自ASP.Net的ProcessMaker Web服务。ProcessMaker是一个开源的工作流解决方案,它通过使用PHP开发的SOAP Web服务提供集成。