小编jru*_*ell的帖子

获取空白页而不是401错误页面

我有一个ASP.NET MVC3应用程序与Windows身份验证部署到IIS6.当经过身份验证的用户单击他们无权查看的链接时,系统会提示他们按预期输入用户名和密码(在浏览器对话框中,而不是页面中).

但是,单击取消或输入三次无效凭据后,我看到一个空白页面,而不是看到401 Unauthorized页面.

查看Fiddler,点击取消后有三个请求/响应.以下是响应摘要和标题:

  1. ASP.NET Access被拒绝消息(401.2)

    HTTP/1.1 401未授权日期:星期五,2012年7月20日14:34:21 GMT服务器:Microsoft-IIS/6.0 WWW-身份验证:协商WWW-Authenticate:NTLM X-Powered-By:ASP.NET X-AspNet-版本: 4.0.30319 Cache-Control:private Content-Type:text/html; charset = utf-8内容长度:1701代理支持:基于会话的身份验证

  2. IIS您无权查看此页面(401.1)

    HTTP/1.1 401未经授权的内容长度:1539内容类型:text/html服务器:Microsoft-IIS/6.0 WWW-Authenticate:NTLM TlRMTVNTUAACAAAADAAMADgAAAAF ...(为简洁起见省略)X-Powered-By:ASP.NET日期:星期五,2012年7月20日14:34:21 GMT代理支持:基于会话的身份验证

  3. 空响应

    HTTP/1.1 401未授权日期:星期五,2012年7月20日14:34:21 GMT服务器:Microsoft-IIS/6.0 WWW-身份验证:协商WWW-Authenticate:NTLM X-Powered-By:ASP.NET X-AspNet-版本: 4.0.30319 X-AspNetMvc-Version:3.0 Cache-Control:private Content-Length:0代理支持:基于会话的身份验证

如何让它显示401错误页面?

更新1:

这是我的web.config错误部分.

<customErrors mode="RemoteOnly" defaultRedirect="~/Error" />
Run Code Online (Sandbox Code Playgroud)

我也在用HandleErrorAttribute.

我怀疑IIS正在返回空白页而不是ASP.NET,但我不确定如何证明这一点.

更新2:

这是有趣的.如果我刷新空白页面,我看到ASP.NET Access被拒绝消息.

asp.net iis iis-6

7
推荐指数
1
解决办法
4572
查看次数

vscode是否在git commit消息框中进行了拼写检查?

我想知道vscode是否具有用于提交消息的拼写检查器,我认为在提交之前检查拼写错误将非常有用。

在此处输入图片说明

visual-studio-code vscode-settings

7
推荐指数
3
解决办法
457
查看次数

如何在源代码管理中查找文件但不在Visual Studio解决方案中查找文件?

我在Subversion中有一个相当大的Visual Studio 2008解决方案.它几个月前从Visual SourceSafe迁移过来.我开始发现当我使用VSS时,仍有许多源代码控制文件已从解决方案中删除.它们在签出后可能已重命名或删除 - VSS不喜欢这样.

我正在寻找一种简单的方法来查找解决方案中但不在Subversion中的所有文件.像WinMerge的文件夹比较之类的东西是理想的,其中一方是Subversion工作副本,另一方是项目内容.

visual-studio

6
推荐指数
1
解决办法
2013
查看次数

从ScrewTurn Wiki导出到Confluence的脚本或实用程序?

有没有人尝试过从ScrewTurn迁移到Confluence?我希望我可以将ScrewTurn数据库导出到xml,然后使用实用程序将其置于Confluence可以理解的格式 - 也许是Universal Wiki Converter使用的格式.

有人用过这样的实用工具吗?在我尝试自己写一个之前,有什么我应该知道的吗?

更新:我已经安装了Confluence试用版,我看了一下备份.有一个entities.xml看起来像数据存储的文件.root标签是<hibernate-generic>让我相信他们使用Hibernate的.我不熟悉Hibernate,但这应该是有用的.

migration wiki confluence screwturn

6
推荐指数
1
解决办法
4146
查看次数

如何通过Web Deploy服务保护TeamCity部署?

我的团队使用TeamCity进行持续集成.它将通过Web Deploy构建,测试和部署Web应用程序到dev和qa Web服务器.棘手的部分是部署到生产Web服务器 - 我们的策略规定开发人员不能部署到生产,只有系统管理员才能.

我们当前的方法是让TeamCity构建一个Web部署包,管理员可以在生产Web服务器上下载和安装该包.但是,我们希望他们只需在构建配置上单击"运行",但我们不确定如何保护该按钮.

我们可以创建一个只有管理员才能访问的TeamCity项目,但我们还必须解决Web Deploy的安全问题.Web Deploy服务需要使用生产服务器上的本地管理员帐户进行身份验证.我们不希望开发人员在构建脚本中访问用户名/密码,也不希望每个构建代理都作为此帐户运行,因为开发人员可以创建使用它来部署到生产的构建.

我没有太多运气找到TeamCity安全/部署最佳实践的资源,但我无法想象我们是这种情况下唯一的公司.其他人如何管理自动部署安全性?

security deployment teamcity

6
推荐指数
1
解决办法
745
查看次数

与ASP.net WEB API进行交易

我知道ASP.NET WEB API是为了帮助实现基于REST的轻量级应用程序而构建的.但是,我需要我的REST服务是事务性/成为事务的一部分.我试着四处寻找,但看起来没有办法将WEB API作为客户启动的事务的一部分.有没有办法做到这一点?

关于Jagadish

.net transactions asp.net-web-api

6
推荐指数
2
解决办法
9801
查看次数

DbContext处理?

的DbContext

public class HaberPortalDB : DbContext
{
    public DbSet<Haberler> Haberler { get; set; }
    public DbSet<Kategoriler> Kategoriler { get; set; }
    public DbSet<Yazarlar> Yazarlar { get; set; }
}

public class Haberler
{
    public virtual int Id { get; set; }
    public virtual string Baslik { get; set; }
    public virtual string Aciklama { get; set; }
    public virtual string Icerik { get; set; }

    public virtual int YazarId { get; set; }
    public virtual Yazarlar Yazar { get; set; …
Run Code Online (Sandbox Code Playgroud)

c# asp.net-mvc entity-framework idisposable

6
推荐指数
1
解决办法
7308
查看次数

如何在AZURE中安排存储过程

我有一个存储过程,我希望它在每个中间运行,但我的数据库是在aZure

如何使用sql代理安排任务?

azure azure-sql-database

6
推荐指数
2
解决办法
1万
查看次数

Vue.js Asp.NET 核心表单验证

我目前正在使用 asp .net core 学习 vuejs。我正在做一些表单验证并添加一些错误消息。

错误消息来自服务器端,这里是我的示例代码:

 [HttpPost]
    public async Task<IActionResult> AddUser([FromBody] UserModel user)
    {

        if (!ModelState.IsValid)
        {
            return BadRequest(ModelState);
        }

        if (_context.Users.Any(u => u.UserName == user.UserName))
        {
            ModelState.AddModelError("UserName", "Username is already in used");
            return BadRequest(ModelState);
        }

        try
        {
            var userDto = new User
            {
                FirstName = user.FirstName,
                LastName = user.LastName,
                Password = user.Password,
                UserName = user.UserName
            };
            _context.Users.Add(userDto);
            await _context.SaveChangesAsync();
        }
        catch(Exception e)
        {
            ModelState.AddModelError("Saving Error", string.Format("Error in saving user. \nDetails:\n {0}", e.Message));
            return BadRequest(ModelState);
        }

        return Ok();
    } …
Run Code Online (Sandbox Code Playgroud)

validation vue.js asp.net-core vuejs2

6
推荐指数
0
解决办法
1009
查看次数

当我对我的操作进行单元测试时,为什么 Controller.Url 为空?

我已经按照这个答案来模拟 HttpContext、Request、Response 和 User 并设置Controller.ControllerContextand Controller.Url

Controller.Url在调用之前绝对不为空controller.Index()。然而,在内部controller.Index(),它是空的。看起来很奇怪。我缺少什么?

这是我的测试装置:

[TestFixture]
public class ControllerFixtureBase
{
    private Mock<HttpContextBase> _httpContextMock;
    private RouteCollection _routes;

    [SetUp]
    public void SetUp()
    {
        var requestMock = new Mock<HttpRequestBase>();
        requestMock.SetupGet(x => x.ApplicationPath)
            .Returns("/");
        requestMock.SetupGet(x => x.Url)
            .Returns(new Uri("http://localhost/a", UriKind.Absolute));
        requestMock.SetupGet(x => x.ServerVariables)
            .Returns(new NameValueCollection());

        var responseMock = new Mock<HttpResponseBase>();
        responseMock.Setup(x => x.ApplyAppPathModifier(It.IsAny<string>()))
            .Returns((string url) => url);

        var principalMock = new Mock<IPrincipal>();
        principalMock.SetupGet(p => p.Identity)
            .Returns(new GenericIdentity("testuser"));
        principalMock.Setup(p => p.IsInRole(ApplicationRoles.DataAdmin))
            .Returns(false); …
Run Code Online (Sandbox Code Playgroud)

nunit moq asp.net-mvc-3

5
推荐指数
1
解决办法
2255
查看次数