C#|无效URI:无法确定URI的格式
我不断收到一个错误,上面写着“无效URI:无法确定URI的格式” 错误发生在第3行C#|无效URI:无法确定URI的格式,c#,http,C#,Http,我不断收到一个错误,上面写着“无效URI:无法确定URI的格式” 错误发生在第3行 这是我的代码: public static string Get() { HttpWebRequest request = (HttpWebRequest)WebRequest.Create(@"27.**.***.14"); request.MaximumAutomaticRedirections = 4;
这是我的代码:
public static string Get()
{
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(@"27.**.***.14");
request.MaximumAutomaticRedirections = 4;
request.MaximumResponseHeadersLength = 4;
request.Credentials = CredentialCache.DefaultCredentials;
HttpWebResponse response = (HttpWebResponse)request.GetResponse();
Stream receiveStream = response.GetResponseStream();
StreamReader readStream = new StreamReader(receiveStream, Encoding.UTF8);
string result = readStream.ReadToEnd();
response.Close();
readStream.Close();
return result;
}
编辑:原来我在IP地址前面缺少了一个http://地址,这样做解决了这个问题尝试将协议前缀放在IP地址前面,即在您的示例中为“http://” 我不断收到一个错误,上面写着“无效的URI:无法更改URI的格式” 这是我的代码:
public static string Get()
{
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(@"27.**.***.14");
request.MaximumAutomaticRedirections = 4;
request.MaximumResponseHeadersLength = 4;
request.Credentials = CredentialCache.DefaultCredentials;
HttpWebResponse response = (HttpWebResponse)request.GetResponse();
Stream receiveStream = response.GetResponseStream();
StreamReader readStream = new StreamReader(receiveStream, Encoding.UTF8);
string result = readStream.ReadToEnd();
response.Close();
readStream.Close();
return result;
}
首先,我要说的是,您的大多数代码都是完全无关的。请参阅,问题在于您输入的字符串发生在第1行:
HttpWebRequest请求=(HttpWebRequest)WebRequest.Create(@“27.*.14”)
剩下的就是噪音。你真有趣,从来没有告诉我们错误发生在哪一行
IP也指向我在raspberry PI上运行的HTTP服务器
这也无关紧要。因为解析发生时甚至没有联系服务器,所以不需要实际存在服务器
这:
.创建(@“27.*.14”)
is(假设**是一个有效数字)不是一个URL,句点。它是一个IP地址。URL不是IP地址,它们必须指定协议。是的,你可以假设软件应该像你的浏览器一样。它只是没有实现
所以,下次:
- 一步一步地检查代码。你有一个调试器是有原因的。这将允许您通过删除所有从未执行过的行来减少post
- 阅读错误消息。很明显,它告诉你这不是一个URL