- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
详情如下:https://docs.microsoft.com/en-us/dotnet/api/microsoft.aspnetcore.http.httprequest?view=aspnetcore-3.0 , ASP.NET Core 的 HttpRequest
类(class)包括 Path
和 PathBase
特性。
这两个属性有什么区别?每一个是做什么用的? PathBase
是什么意思?同时拥有 Path
有什么意义?和一个 PathBase
?
我找不到任何详细说明为什么会这样的文档 - 有什么想法吗?
最佳答案
在 ASP.NET 核心中有一个称为路径基础的概念。基本思想很容易理解:路径基被认为是 Web 应用程序的所有传入请求的路径的固定前缀。默认情况下,路径基数被认为是空字符串。
这意味着,默认情况下,当请求进入您的应用程序时,请求 URL 的所有路径部分都将映射到 Path
HttpRequest
的属性(property)对象和 PathBase
属性将设置为 string.empty
.
例如,考虑一个在本地机器上运行并监听端口 3000
的 asp.net 核心应用程序。 .假设您使用原始 kestrel Web 服务器运行应用程序(因此不涉及反向代理,请求直接到达 kestrel)。
当您请求 URL 时 http://localhost:3000/foo/bar
然后是 HttpRequest
对象将具有以下属性:
HttpRequest.Path
将设置为 /foo/bar
HttpRequest.PathBase
将设置为 string.empty
https://my-application.azurewebsites.net
.当您浏览到 URL
https://my-application.azurewebsites.net/foo/bar
时,传入http请求的情况如下:
HttpRequest.Path
将设置为 /foo/bar
HttpRequest.PathBase
将设置为 string.empty
https://sample-application.contoso.net
并且您选择了
sample-alias
作为虚拟应用程序的别名。这意味着对您的 asp.net 核心 Web 应用程序的所有请求都将有一个以
sample-alias
开头的路径部分。 .例如,当您需要应用程序的主页时,您将浏览到
https://sample-application.contoso.net/sample-alias
。 .
https://sample-application.contoso.net/sample-alias/foo/bar
时,
HttpRequest
您的应用程序中的对象将通过以下方式完成:
HttpRequest.Path
将设置为 /foo/bar
HttpRequest.PathBase
将设置为 sample-alias
sample-alias
以及传入请求路径剩余部分的路径属性(在我上面的示例中为
/foo/bar
)。
/awesome-application
开头的请求。将路由到您的 asp.net 核心 Web 应用程序。
https://ingress.contoso.net
处将 nginx 暴露给公共(public)互联网。 : 在这种情况下,如果您想请求应用程序的主页,您需要浏览到
https://ingress.contoso.net/awesome-application/
.
awesome-application
免费请求路径基础 (默认情况下,kestrel 不知道它,它认为请求路径基为
string.empty
)。
关于c# - ASP.NET Core 中的 HttpRequest.Path 和 HttpRequest.PathBase 有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58614864/
假设我的客户端(浏览器)请求我的 java 服务(服务 A)。 http://localhost:8080/getDataFromB 根据服务 A 的请求,我需要向服务 B 或服务 C 发出另一个 H
我正在尝试调用 API 来检索数据列表,此数据将帮助我获取图像源。因此,对于每个数据条目,我尝试调用图像 url 并使用 Parse Image 进行一些图像处理。问题是,内部的 httpReques
当前代码 if (!(context.Exception is exception)) HttpContent requestContent = context.Request.Content
我有这个代码: You are browsing this site with: Or with Request.UserAgent: 第一个在浏览器
我正在使用 Django 和 TornadIO2/Tornado 编写一个 socket.io 应用程序。在 TonradIO2 session 中,我可以访问 Tornado 的 HTTPReque
用于确定用户代理的这两个属性之间有什么区别(如果有)和优点/缺点? Dim strUserAgt as String userAgent = Request.userAgent 对比 Dim strU
详情如下:https://docs.microsoft.com/en-us/dotnet/api/microsoft.aspnetcore.http.httprequest?view=aspnetco
我一直在关注我网站的性能,在所有执行缓慢的代码 (>1s) 中,超过 90% 是因为 System.Web.HttpRequest.GetEntireRawContent()(由 System.Web
我有一个后端服务,它接受授权 header 来验证访问。我使用 Spring cloud zuul 创建了一个网关服务,并将请求路由到后端服务。 网关服务本身受 OAuth2 保护,并接受授权 hea
是否可以在中间件函数中获取请求方法(GET、POST、PUT...)? $myMiddleware = function (Request $request) { // This is wha
代码如下: //Get请求方式 private string RequestGet(string Url) &n
在 .net Framework yield ok. // if is not valid var request = HttpContext.Current.Req
在用于 http get 和 post 的 angular 5.2.x 中,我有以下代码: post(url: string, model: any): Observable { return thi
我试图了解如何从Dart进行Ajax调用。我对Web编程的了解非常有限。 我的简单服务器ajax.py:- #!/usr/bin/env python from datetime import tim
我正在为Http GET请求创建包装器类,但是当我使用HttpRequest.request时,没有任何响应。如果我使用原始的HttpRequests使用等效的代码,则可以使用。 我想念什么吗?我正在
我正在尝试生成一个 jmeter 脚本,其中每次运行脚本时都会创建一个唯一的文件夹 - 将某种变量添加到文件夹名称中,例如用户名+时间戳,应该足以保证唯一性。然而,jmeter 并没有将变量解析为其值
我有一个网络应用程序,它有一个计时器,每 3 秒触发一次轮询以获取数据。它工作正常大约 2.5 分钟,然后 Chromium 崩溃。 我的请求 Dart 看起来像这样 HttpRequest.getS
我目前有一个函数,可以生成 httpRequest 并将接收到的 json 解析为 URL array 。我想在第一个请求完成并且数据解析后触发第二个 httpRequest ,在我尝试过的两种解决方
我试图像这样延迟我的 $http 调用: githubService.getUserEvents = function getUserEvents() { return $timeout
我正在运行 340 个并发用户以使用 jmeter 在服务器上进行负载测试。 但是在大多数情况下,jmeter 挂断并且不会返回,即使我尝试关闭连接它也只是挂断了。最终我不得不关闭应用程序。 任何想法
我是一名优秀的程序员,十分优秀!