ItemLookupのサンプルコード(C#) †
ここで紹介しているコードはこちらのプロキシクラスを使用しています。
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
111
112
113
114
115
116
117
118
119
| | <%@ Page Language="C#" %>
<%@ 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 void Button1_Click(object sender, EventArgs e)
{
ItemLookupRequest req = new ItemLookupRequest();
req.ItemId = new string[] { TextBox1.Text };
req.Condition = Condition.All;
req.ConditionSpecified = true;
req.MerchantId = "All";
req.ResponseGroup = new string[] { "Small", "OfferFull" };
ItemLookup il = new ItemLookup();
il.AWSAccessKeyId = "(あなたのAccessKeyID)";
il.AssociateTag = "dobonnet-22";
il.Request = new ItemLookupRequest[] { req };
AWSECommerceService aws = new AWSECommerceService();
ItemLookupResponse res;
try
{
res = aws.ItemLookup(il);
}
catch (Exception ex)
{
Label1.Text = "エラー:" + Server.HtmlEncode(ex.Message);
return;
}
if (res == null || res.Items == null)
{
Label1.Text = "結果を取得できませんでした。";
return;
}
if (res.Items[0].Request.Errors != null)
{
Label1.Text = "エラー:" +
res.Items[0].Request.Errors[0].Message;
return;
}
if (res.Items[0].Item == null)
{
Label1.Text = "該当する商品が見つかりませんでした。";
return;
}
Label1.Text = "";
Item item = res.Items[0].Item[0];
Label1.Text += "<b><a href=\"" + item.DetailPageURL + "\">" +
item.ItemAttributes.Title + "</a></b><br />\n";
if (item.Offers != null && item.Offers.Offer != null)
{
Label1.Text += "<ul>\n";
foreach (Offer o in item.Offers.Offer)
{
if (o.Seller != null)
{
Label1.Text += "<li><b>" + o.Seller.Nickname +
"</b>\n";
Label1.Text += "<br />ID : " + o.Seller.SellerId +
"\n";
}
else
{
Label1.Text += "<li><b>Amazon</b>\n";
}
if (o.OfferListing != null)
{
Label1.Text += "<ul>\n";
foreach (OfferListing ol in o.OfferListing)
{
Label1.Text += "<li>価格 : " +
ol.Price.FormattedPrice + "<br>";
Label1.Text += "ID : " +
ol.OfferListingId + "<br>";
}
Label1.Text += "</ul>\n";
}
}
Label1.Text += "</ul>\n";
}
}
</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>
|