新規投稿
フォローする

vb.netでREST APIを使用する方法について

お世話になっております。

vb.netで「ユーザーエクスポート API(CSV)」を以下のように記述したのですが
res = CType(req.GetResponse(), HttpWebResponse)
の行で「SSL/TLS のセキュリティで保護されているチャネルを作成できませんでした」
のエラーとなります。

ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls or SecurityProtocolTypeExtensions.Tls11 | 
SecurityProtocolTypeExtensions.Tls12
を実行前に記述する、の記載があったので入れてみたのですが
「SecurityProtocolTypeExtensions」が存在しない、でビルドが通りません。
SecurityProtocolType.Tlだけの記述にしても「SSL・・」のエラーのままです。

REAT APIの呼び出しが悪いのか、セキュリティの問題なのか判断がつかず
困っております。
ご教示をお願いできませんでしょうか。
よろしくお願いいたします。

-------------------------------------------------------------------------
Dim sUrl As String
Dim sStr As String
Dim sEncStr As String
Dim req As HttpWebRequest
Dim res As System.Net.WebResponse
Dim resStream As System.IO.Stream
'Dim sReam As System.IO.StreamReader

Try
    sUrl = "https://サブドメイン.cybozu.com/v1/csv/user.csv"
    req = DirectCast(WebRequest.Create(sUrl), HttpWebRequest)

    'Base64エンコード
    sStr = "ユーザーID:パスワード"
    sEncStr = Convert.ToBase64String(Encoding.UTF8.GetBytes(sStr))

    '必要情報セット
    req.Method = "GET"
    req.ContentType = "text/csv"
    req.Headers.Add("X-Cybozu-Authorization:" & sEncStr)

    res = CType(req.GetResponse(), HttpWebResponse)
    resStream = res.GetResponseStream()
    Dim sReam As New StreamReader(resStream, Encoding.GetEncoding("Shift_JIS"))

    sReam.Close()
    res.Close()

Catch ex As Exception
    Me.Log.Write(ex)
Finally
    Me.Log.Write("TEST起動 終了----------------------")
End Try
-------------------------------------------------------------------------

 

0

1件のコメント

Avatar
michel

お世話になっております。

調査したところ、.NETFramework4.0ではおまじないの記述ができず

これ以外のバージョンなら呼び出しが可能そうですので一度そちらで

試してみようと思います。

ですので一旦こちらCloseさせていただきます

0
サインインしてコメントを残してください。