简体   繁体   English

System.Net.WebException:远程服务器返回错误:(401)未经授权。 在System.Net.HttpWebRequest.GetResponse()

[英]System.Net.WebException: The remote server returned an error: (401) Unauthorized. at System.Net.HttpWebRequest.GetResponse()

I want to sent push notification via parse.com and i have webservice like that 我想通过parse.com发送推送通知,并且我拥有这样的网络服务

[WebMethod] public bool pushNotification(string pushMessage) { bool isPushMessageSend = false; [WebMethod] public bool pushNotification(string pushMessage){bool isPushMessageSend = false;

    string postString = "";
    string urlpath = "https://api.parse.com/1/push";
    //var httpWebRequest = (HttpWebRequest)WebRequest.Create(urlpath);

    System.Net.WebRequest request = System.Net.HttpWebRequest.Create(urlpath);

    request.UseDefaultCredentials = true;

    request.PreAuthenticate = true;

    request.Credentials = CredentialCache.DefaultCredentials;




    postString = "{ \"channels\": [ \"Trials\"  ], " +
                     "\"data\" : {\"alert\":\"" + pushMessage + "\"}" +
                     "}";
    request.ContentType = "application/json";
    request.ContentLength = postString.Length;
    request.Headers.Add("APP ID", "My Parse App Id");
    request.Headers.Add("REST API KEY", "My Rest API Key");
    request.Method = "POST";
    StreamWriter requestWriter = new StreamWriter(request.GetRequestStream());
    requestWriter.Write(postString);
    requestWriter.Close();
    //var httpResponse = (HttpWebResponse)request.GetResponse();
    System.Net.WebResponse response = request.GetResponse();
    using (var streamReader = new StreamReader(response.GetResponseStream()))
    {
        var responseText = streamReader.ReadToEnd();
        JObject jObjRes = JObject.Parse(responseText);
        if (Convert.ToString(jObjRes).IndexOf("true") != -1)
        {
            isPushMessageSend = true;
        }
    }

    return isPushMessageSend;
}

I had error like this 我有这样的错误

System.Net.WebException: The remote server returned an error: (401) Unauthorized.
   at System.Net.HttpWebRequest.GetResponse()
   at WebService.pushNotification(String pushMessage) in c:\Users\Hurkan Seyhan\desktop\website3\App_Code\WebService.cs:line 488

How can I solve this problem? 我怎么解决这个问题?

according to their documentation ( https://parse.com/docs/push_guide#sending-channels/REST ) I think that mistake in your headers 根据他们的文档( https://parse.com/docs/push_guide#sending-channels/REST ),我认为标题中的错误

instead of 代替

request.Headers.Add("[YOUR APP ID]", "My Parse App Id");
request.Headers.Add("[YOUR REST API KEY]", "My Rest API Key");

you probably should write the following: 您可能应该编写以下内容:

request.Headers.Add("X-Parse-Application-Id", "[YOUR APP ID]");
request.Headers.Add("X-Parse-REST-API-Key", "[YOUR REST API KEY]");

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 远程服务器返回错误:(401) Unauthorized at System.Net.HttpWebRequest.GetResponse() - The remote server returned an error: (401) Unauthorized at System.Net.HttpWebRequest.GetResponse() Jenkins + Sonarqube-未处理的异常:System.Net.WebException:远程服务器返回错误:(401)未经授权 - Jenkins + Sonarqube - Unhandled Exception: System.Net.WebException: The remote server returned an error: (401) Unauthorized 远程服务器返回错误:(500)System.Net.HttpWebRequest.GetResponse()上的服务器上的内部服务器错误 - The remote server returned an error: (500) Internal Server Error on server at System.Net.HttpWebRequest.GetResponse() System.Net.WebException:操作在 System.Net.HttpWebRequest.GetResponse 超时 - System.Net.WebException: The operation has timed out at System.Net.HttpWebRequest.GetResponse 远程服务器返回错误 (404) 未找到。 在 system.net.httpwebrequest.getresponse() - the remote server returned an error (404) not found. at system.net.httpwebrequest.getresponse() System.Net.WebException:远程服务器返回错误:(403)禁止 - System.Net.WebException: The remote server returned an error: (403) Forbidden System.Net.WebException:远程服务器返回错误:(403)禁止 - System.Net.WebException : The remote server returned an error: (403) Forbidden System.Net.HttpWebRequest.GetResponse()中的错误“ResponceSystem.Net.WebException:请求已中止:无法创建SSL / TLS安全通道” - Error in System.Net.HttpWebRequest.GetResponse() “ResponceSystem.Net.WebException: The request was aborted: Could not create SSL/TLS secure channel” System.Net.WebException:在使用HttpWebRequest发布帖子时无法连接到远程服务器错误? - System.Net.WebException: Unable to connect to the remote server error while just making post with HttpWebRequest? System.Net.WebException:远程服务器返回错误:(500)内部服务器错误。 - System.Net.WebException: The remote server returned an error: (500) Internal Server Error.
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM