Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/280.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如果http内容是二进制文件,Azure函数不接受带有拉丁字符的标头_C#_Azure_Http Headers_Azure Functions - Fatal编程技术网

C# 如果http内容是二进制文件,Azure函数不接受带有拉丁字符的标头

C# 如果http内容是二进制文件,Azure函数不接受带有拉丁字符的标头,c#,azure,http-headers,azure-functions,C#,Azure,Http Headers,Azure Functions,我正试图通过邮递员向我的azure功能端点发送http请求。但我收到一个错误的请求 request: POST headers: Content-Type: audio/mpeg (also tried application/octet-stream) Language: BokmålNorway request body: (binary in postman, and selected MP3 file) 这是一个azure函数 public async Task<IAc

我正试图通过邮递员向我的azure功能端点发送http请求。但我收到一个错误的请求

request: POST

headers: 
Content-Type: audio/mpeg (also tried application/octet-stream)
Language: BokmålNorway

request body:
 (binary in postman, and selected MP3 file)
这是一个azure函数

 public async Task<IActionResult> RunAsync(
        [HttpTrigger(AuthorizationLevel.Function, "get", "post")] HttpRequest httpRequest,
        [Blob("audios", Connection = "AzureWebJobsStorage")] CloudBlobContainer outputContainer)
公共异步任务RunAsync(
[HttpTrigger(AuthorizationLevel.Function,“get”,“post”)]HttpRequest HttpRequest,
[Blob(“audios”,Connection=“azurewebjobstorage”)]CloudBlobContainer输出容器)
如果我将语言标题值从BokmålNorway更改为BokmalNorway(更改),则一切正常,并返回200代码

问题只存在于二进制文件请求中。对于原始、表单等请求类型,带有“BokmålNorway”值的语言头按预期工作

应用程序不会返回任何错误,也不会写入任何日志。每次它都会返回400个错误(错误请求)

顺便说一句,应用程序不会触发代码的任何部分,我不能用断点停止它。我认为azure函数在其逻辑中的某个地方返回了400个错误


有没有办法解决这个问题?

我正在使用Azure Function 3.1核心项目,请改用ID。请参阅:jdweng这可以是一个选项,但理想情况下,我希望使用名称,而不是语言代码。谢谢如下:@jdweng感谢您的回复。但是正如我在描述中提到的,Azure函数在触发我的函数代码之前抛出了一个异常。所以我无法在代码中获取这个httpRequest。(我不确定它是否是异常,它只是返回错误的请求)