C#|无效URI:无法确定URI的格式

C#|无效URI:无法确定URI的格式,c#,http,C#,Http,我不断收到一个错误,上面写着“无效URI:无法确定URI的格式” 错误发生在第3行 这是我的代码: public static string Get() { HttpWebRequest request = (HttpWebRequest)WebRequest.Create(@"27.**.***.14"); request.MaximumAutomaticRedirections = 4;

我不断收到一个错误,上面写着“无效URI:无法确定URI的格式” 错误发生在第3行
这是我的代码:

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
这是一篇多么“非常有用”和“不可恨”的帖子,不仅如此,你甚至从未给出过答案。