寻找一个webservices教程的说明,工作

本文关键字:教程 说明 工作 webservices 一个 寻找 | 更新日期: 2023-09-27 18:16:47

好吧,我几乎到了沮丧的地步,我想去打破东西。当然是形象地说。

现在我试着学习用c#编写一个web服务(WCF, ASMX web服务,我不在乎,无论什么是最好的),我想用JQuery/AJAX(而不是ASP)达到web服务。. NET webforms(因为我想使用AngularJS),或者如果它更好,生成一个调用WCF的代理。

到目前为止我所尝试的:我从普通的web服务开始(在Visual Studio 2012中:启动一个空的ASP)。. NET Web应用程序,并向其添加Web服务)。我运行网络服务,它工作。然后我将web服务发布到IIS,这样我就可以从另一台计算机访问它。然后第一个问题出现了,它行不通。似乎我必须安装ASP。. NET在IIS。它可以工作,但是当我在不同的计算机上调用web服务时,我得到的消息是我只能在本地机器上调用web方法。

查看这条消息给了我很多相同的结果:我必须配置我的web。配置和我必须添加httpGet和httpPost标签到它。所以我这样做了,但是……还是不行。进一步的搜索并没有给我正确的答案或解决方案。

但是我读到的是这种web服务方式已经过时了,我应该使用WCF。因为我想要这个工作,不管以什么方式,只要服务是c#和客户端是JS(与AngularJS)我很高兴。

所以我搜索了教程,找到了很多,遵循了很多,但没有一个是有效的,至少,不适合我。错误和消息是我得到的,当我解决一个消息或错误时,我得到下一个。

使用WCF,我现在可以调用操作契约,但我不能传递操作契约的参数。可能是Json语法错误?我不知道。根据StackOverflow上的一些答案,我不得不添加RequestFormat。于是我照做了。我还必须将WebGet更改为WebInvoke。但现在我得到一个405错误和搜索它,这似乎是一个Post/get问题。因此,我将AJAX调用中的Type更改为Post(根据服务报头应该是Post),但调用仍然是GET。我只是不明白,经过很长时间的尝试,它开始让我沮丧。

底线是:当涉及到web服务时,什么是最佳实践?是否有一个好的书面教程来处理每一个点,所以它最终确实有效?或者我做错了什么?因为,由于互联网上可能有成千上万的网络服务,这肯定是我做错了什么,但我从来没有弄清楚是什么。

寻找一个webservices教程的说明,工作

确保WebDAV不在托管web服务的站点/服务器上运行,在web.config:

<system.webServer>
    <modules>
        <remove name="WebDAVModule" />
    </modules>
</system.webServer>

我还建议你看看ServiceStack的。net web服务,大量的文档& &;示例,例如HelloWorld &Wiki