This repository was archived by the owner on Dec 18, 2018. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 521
This repository was archived by the owner on Dec 18, 2018. It is now read-only.
Handle requests that use an absolute URI as the request path #666
Copy link
Copy link
Closed
Description
Kestrel returns HTTP/1.1 500 Internal Server Error
when the request has a complete request URI.
Sample app - HelloWorldMvc
Program.cs
using System;
using System.Net;
using System.Net.Sockets;
using System.Text;
namespace KestrelFullRequestUriIssue
{
public class Program
{
public static void Main(string[] args)
{
var endpoint = new DnsEndPoint("localhost", 5000);
Socket s = new Socket(SocketType.Stream, ProtocolType.Tcp);
s.Connect(endpoint);
var raw = "GET http://localhost:5000/ HTTP/1.1\r\n" +
"Host: localhost:5000\r\n" +
"Content-Length: 0\r\n" +
"Connection: close\r\n" +
"\r\n";
var request = Encoding.ASCII.GetBytes(raw);
Console.WriteLine(raw);
s.Send(Encoding.ASCII.GetBytes(raw));
byte[] buffer = new byte[1024];
int count = 0;
while ((count = s.Receive(buffer)) != 0)
Console.WriteLine(Encoding.ASCII.GetChars(buffer, 0, count));
s.Dispose();
}
}
}
project.json
{
"version": "1.0.0-*",
"description": "KestrelFullRequestUriIssue Console Application",
"authors": [ "sajaya" ],
"tags": [ "" ],
"projectUrl": "",
"licenseUrl": "",
"compilationOptions": {
"emitEntryPoint": true
},
"dependencies": {
},
"commands": {
"KestrelFullRequestUriIssue": "KestrelFullRequestUriIssue"
},
"frameworks": {
"dnx451": { },
"dnxcore50": {
"dependencies": {
"Microsoft.CSharp": "4.0.1-beta-23516",
"System.Collections": "4.0.11-beta-23516",
"System.Console": "4.0.0-beta-23516",
"System.Linq": "4.0.1-beta-23516",
"System.Net.NetworkInformation": "4.0.0-beta-23019",
"System.Net.Primitives": "4.0.11-beta-23516",
"System.Private.Networking": "4.0.1-beta-23225",
"System.Net.Sockets": "4.1.0-beta-23516",
"System.Threading": "4.0.11-beta-23516"
}
}
}
}