ItemLookupのサンプルコード(VB.NET) †
ここで紹介しているコードはこちらのプロキシクラスを使用しています。
ここで紹介しているコードはこちらのC#のコードをVB.NETに変換したものです。
Amazon.co.jpで売られている商品の情報(売り手の名前と価格)を表示するサンプルです。TextBoxに商品のASINを入力します。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
| | <%@ Page Language="VB" %>
<%@ Import Namespace="Amazon.jp.v20060913" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
Protected Sub Button1_Click(ByVal sender As Object, _
ByVal e As EventArgs)
Dim req As New ItemLookupRequest()
req.ItemId = New String() {TextBox1.Text}
req.Condition = Condition.All
req.ConditionSpecified = True
req.MerchantId = "All"
req.ResponseGroup = New String() {"Small", "OfferFull"}
Dim il As New ItemLookup()
il.AWSAccessKeyId = "(あなたのAccessKeyID)"
il.AssociateTag = "dobonnet-22"
il.Request = New ItemLookupRequest() {req}
Dim aws As New AWSECommerceService()
Dim res As ItemLookupResponse
Try
res = aws.ItemLookup(il)
Catch ex As Exception
Label1.Text = "エラー:" + Server.HtmlEncode(ex.Message)
Return
End Try
If res Is Nothing OrElse res.Items Is Nothing Then
Label1.Text = "結果を取得できませんでした。"
Return
End If
If Not (res.Items(0).Request.Errors Is Nothing) Then
Label1.Text = "エラー:" + _
res.Items(0).Request.Errors(0).Message
Return
End If
If res.Items(0).Item Is Nothing Then
Label1.Text = "該当する商品が見つかりませんでした。"
Return
End If
Label1.Text = ""
Dim item As Item = res.Items(0).Item(0)
Label1.Text += "<b><a href=""" + item.DetailPageURL + """>" + _
item.ItemAttributes.Title + "</a></b><br />" + vbLf
If Not (item.Offers Is Nothing) AndAlso _
Not (item.Offers.Offer Is Nothing) Then
Label1.Text += "<ul>" + vbLf
Dim o As Offer
For Each o In item.Offers.Offer
If Not (o.Seller Is Nothing) Then
Label1.Text += "<li><b>" + _
o.Seller.Nickname + "</b>" + vbLf
Label1.Text += "<br />ID : " + _
o.Seller.SellerId + vbLf
Else
Label1.Text += "<li><b>Amazon</b>" + vbLf
End If
If Not (o.OfferListing Is Nothing) Then
Label1.Text += "<ul>" + vbLf
Dim ol As OfferListing
For Each ol In o.OfferListing
Label1.Text += "<li>価格 : " + _
ol.Price.FormattedPrice + "<br>"
Label1.Text += "ID : " + _
ol.OfferListingId + "<br>"
Next ol
Label1.Text += "</ul>" + vbLf
End If
Next o
Label1.Text += "</ul>" + vbLf
End If
End Sub
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head id="Head1" runat="server">
<title>Amazon商品情報の取得</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<label for="TextBox1">ASIN : </label>
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
<asp:Button ID="Button1" runat="server"
OnClick="Button1_Click" Text="送信" EnableViewState="False" />
<br />
<br />
</div>
</form>
<asp:Label ID="Label1" runat="server" EnableViewState="False">
</asp:Label>
</body>
</html>
|