パッケージにはすぐ実行できる server_xmlhttp.exe が入っていますが、 同じディレクトリに MSXML2.dll が必要です ★ MSXML2.dll( Msxml2.ServerXMLHTTP参照用 : 同梱しています ) ★ server_xmlhttp.exe APIキー URL で実行 以下のページは、Google の API の内容を記述したページです Google URL Shortener API アカウントでログインして、APIs Console にアクセスしてAPI キーを取得できます
![]()
※ ここの API で戻されるのは、JSONです ※ POST でデータを取得します ※ この API で、URL エンコードは必要ありません 簡単な JSON なので、文字列処理で結果を取得しています( Split、Replace )
Imports myCom
Module Module1
Sub Main()
' http 通信用のオブジェクトを作成
Dim ServerXML As New myCom.ServerXMLHTTP60()
' タイムアウトの設定
Dim lResolve As Integer = 60 * 1000
Dim lConnect As Integer = 60 * 1000
Dim lSend As Integer = 60 * 1000
Dim lReceive As Integer = 60 * 1000
ServerXML.setTimeouts(lResolve, lConnect, lSend, lReceive)
' 呼び出す URL を設定
Dim URL As String = "https://www.googleapis.com/urlshortener/v1/url"
' 変換元の文字列を引数から取得する
' 空白を指定したい場合は、"文字列 文字列" のように指定する
Dim arguments As String() = Environment.GetCommandLineArgs()
' 引数は2つ許可
if arguments.Length <> 3 then
Console.WriteLine("引数を指定して下さい")
Return
end if
' 第一引数は APIキー
URL += "?key=" + arguments(1)
' 第ニ引数は URL
Dim TargetURL As String = arguments(2)
' 結果
Console.WriteLine( URL )
' 送信データ
Dim SendData As String = "{""longUrl"": """ + TargetURL + """}"
' POST する為に開く
ServerXML.open("POST", URL, False)
' HTTP ヘッダをセット( Google の仕様での要求内容 )
ServerXML.SetRequestHeader("Content-Type","application/json")
' 送信
ServerXML.send(SendData)
' テキストとして表示
Console.WriteLine(ServerXML.responseText)
' JSON を String として分解
Dim value As String = ServerXML.responseText
' 区切り文字列でテキストデータ全体を分割
Dim stringSeparators As String() = {","}
Dim myParamArray1 As String() = value.Split(stringSeparators, StringSplitOptions.None)
value = myParamArray1(1)
stringSeparators(0) = ": "
myParamArray1 = value.Split(stringSeparators, StringSplitOptions.None)
value = myParamArray1(1)
value = value.Replace("""", "")
' 結果
Console.WriteLine( value )
Console.ReadLine()
End Sub
End Module
関連する記事 ServerXMLHTTP60(Msxml2.ServerXMLHTTP) 用の dll は同梱していますが、SDK より自分で 作成する場合は、以下のリンク先のページ中の「.NET から COM を使う」のリンク先を参照して 下さい VB.net : COMの Msxml2.ServerXMLHTTP を使用して http 通信を行う VB.net : COMの Msxml2.ServerXMLHTTP を使用して URL短縮サービス[p.tl] を使用する VB.net : COMの Msxml2.ServerXMLHTTP を使用して URL短縮サービス[bit.ly] を使用する( XML と TEXT ) PHP : Google のURL短縮APIを呼び出す関数
|
|
【VB.NET : 通信の最新記事】
- VB.net(2010) : COMの Msxml2.ServerXMLHTTP を使用して WEBアプリにバイナリデータを POST する
- VB.net : TKFP.DLL 1.4.3 を使って FTPS でファイル(フォルダ)の一覧を取得する
- VB.net : COMの Msxml2.ServerXMLHTTP を使用して URL短縮サービス[bit.ly] を使用する( XML と TEXT )
- VB.net : COMの Msxml2.ServerXMLHTTP を使用して URL短縮サービス[p.tl] を使用する( JSON )
- VB.net : COMの Msxml2.ServerXMLHTTP を使用して WEBアプリにデータを POST する
- VB.net : COMの Msxml2.ServerXMLHTTP を使用して http 通信を行う
- VB.net : IPアドレスを IPv4 と IPv6 に区別して取得する
- Json.NET を使用して JSON 文字列を VB.net で使用する( 逆シリアライズ )
- VB.net : クライアントが送ったヘッダを表示するだけの HTTPサーバーU
- VB.net : クライアントが送ったヘッダを表示するだけの HTTPサーバー( TcpListener )
- VB.NET : TKMP.DLL でメール送信



※ ここの API で戻されるのは、JSONです
※ POST でデータを取得します
※ この API で、URL エンコードは必要ありません
簡単な JSON なので、文字列処理で結果を取得しています( Split、Replace )




