ASP.Netのお勉強

Request送信@ASP.Net

Requestを作成して、Responseを取得します。
以下は、ライブドアのお天気情報Web APIに対して、Requestを送信します。

urlを作成します。
WebRequest.Createにて、URLのRequestを作成します。
GetResponseにて結果を取得します。

結果から、GetResponseStreamにてStreamを取得します。
StreamReaderで読み出して、ラベルに表示します。

ライブドアのお天気情報は、結果をxml形式で受け取るので、
ラベルにxmlの内容が、表示されます。

●aspx

<%@ Page Language="VB" AutoEventWireup="false" CodeFile="Default.aspx.vb" Inherits="_Default" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>Request送信</title>
</head>
<body>
    <form id="form1" runat="server">
        <asp:Button ID="Button1" runat="server" Text="Button" />
        <br />
        <asp:Label ID="Label1" runat="server" Text=""></asp:Label>
    </form>
</body>
</html>


●aspx.vb

Imports System.Net
Imports System.IO

Partial Class _Default
    Inherits System.Web.UI.Page

    Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click
        Dim req As WebRequest
        Dim res As WebResponse

        Dim st As Stream
        Dim stRead As StreamReader

        Dim url As String

        'ライブドアのお天気情報Web API
        url = "http://weather.livedoor.com/forecast/webservice/rest/v1"
        url += "?city=63&day=today"

        'Request生成
        req = WebRequest.Create(url)

        'Response取得
        res = req.GetResponse()

        'Stream取得
        st = res.GetResponseStream()

        'StreamReader生成
        stRead = New StreamReader(st)

        '表示
        Me.Label1.Text = stRead.ReadToEnd()

        'クローズ
        stRead.Close()
        st.Close()
        res.Close()

    End Sub
End Class


Copyright (C) ASP.Netのお勉強. All Rights Reserved.