2017-02-17 10 views
0

以前は動作していましたが、SalesforceがTLS 1.0暗号化プロトコルからTLS 1.2に更新されて以来、動作しなくなりました。C#を使用してSalesforceにPOSTリクエストを送信

TLS 1.0を無効にしてTLS 1.2を有効にしてコードを作業したりSalesforceに送信したりするために、どのような変更を加えるべきか教えてください。

これは、以下の私のコードです:あなたのコードに次の行を追加すること

public static string WRequest(string URL, string method, string postData) 
{ 
    string responseData = ""; 
    HttpWebRequest request = (HttpWebRequest)WebRequest.Create(URL); 
    request.Accept = "*/*"; 
    request.AllowAutoRedirect = true; 
    request.UserAgent = "http_requester/0.1"; 
    request.Timeout = 60000; 
    request.Method = method; 
    if (request.Method == "POST") 
    { 
    request.ContentType = "application/x-www-form-urlencoded"; 
    UTF8Encoding encodingutf8 = new UTF8Encoding(); 
    byte[] postByteArray = encodingutf8.GetBytes(postData); 
    request.ContentLength = postByteArray.Length; 
    Stream postStream = request.GetRequestStream(); 
    postStream.Write(postByteArray, 0, postByteArray.Length); 
    postStream.Close(); 
    } 
    HttpWebResponse response = (HttpWebResponse)request.GetResponse(); 
    if (response.StatusCode == HttpStatusCode.OK) 
    { 
    Stream responseStream = response.GetResponseStream(); 
    StreamReader myStreamReader = new StreamReader(responseStream); 
    responseData = myStreamReader.ReadToEnd(); 
    } 
    response.Close(); 
    return responseData; 
} 
+0

まず、コードをデバッグする必要があります。誰もデバッグ情報なしであなたを助けることはできません。何がサーバーに送信されていますか?サーバーは何を返すのですか? –

答えて

-1

は試してみてください。

ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12 | SecurityProtocolType.Tls11 | SecurityProtocolType.Tls; 

それは私のために働きました。

関連する問題