刚接触WEBSERVICE,有问题特来请教前辈(关于发布)
最近公司要求使用WEBSERVICE,以方便以后的扩展,因此来学习下这个,但是现在看了蛮多例子什么的,都没怎么详细的说下发布情况
我现在是拿VS05的那个例子做示范发布的
using System;
using System.Web;
using System.Web.Services;
using System.Web.Services.Protocols;
using System.Xml;
[WebService(Namespace = "http://tempuri.org/")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
public class Service : System.Web.Services.WebService
{
public Service () {
//如果使用设计的组件,请取消注释以下行
//InitializeComponent();
}
[WebMethod]
public string HelloWorld()
{
return "Hello World";
}
}
这个我按照大家说的“发布网站”------然后在某个目录下生成好了,我再进IIS“虚拟目录”----把刚刚那个生成目录导进去,然后我按照论坛上说的 localhst/111(网站名字,我随便取的)/service.asmx,但是没用,错误显示是
“/111”应用程序中的服务器错误。
--------------------------------------------
访问被拒绝。
说明: 访问服务此请求所需的资源时出错。您可能没有查看所请求的资源的权限。
错误信息 401.3: 您无权使用您提供的凭据查看此目录或页(由于访问控制列表而导致访问被拒绝)。请让 Web 服务器的管理员授予您访问“C:\Documents and Settings\Wan\My Documents\Visual Studio 2005\Projects\webserver\PrecompiledWeb\webserver\Service.asmx”的权限。
--------------------------------------------
版本信息: Microsoft .NET Framework 版本:2.0.50727.42; ASP.NET 版本:2.0.50727.42
这个是为什么?我系统是SP2+VS05+IIS(版本不清楚,但是以前发布的网站都能看),希望大家能帮个忙
[解决办法]
楼主是什么操作系统?
你在建好的webservice项目出 再新建一个安装部署项目 建立一个安装程序 然后安装setup,就会在 iis里生成虚拟目录 一般之后还要在iis里设置允许匿名访问 或者要文件夹有用户权限 如果iis里有web扩展 还得记得要 打开允许
[解决办法]
IIS里的WEB扩展// 如果需要配置的话在iis里左边树型中有web service extensions一项 我在2003系统上有 当然如果没有了就不用管它
文件夹权限//我想说的是你webservice所在的文件夹 属性安全 里设权限 这个步骤不知道是不是需要 不过我以前在2003操作系统下 经常iis网站页面打不开 说权限不够 要数用户名密码 所以我基本上都在这里设权限