ログインしてさらにmixiを楽しもう

コメントを投稿して情報交換!
更新通知を受け取って、最新情報をゲット!

Visual Basic User's ClubコミュのXML-RPC.Net を使用方法を教えてください

  • mixiチェック
  • このエントリーをはてなブックマークに追加
http://www.xml-rpc.net/
上記サイトのdllを使用してはてなブックマークのブックマーク数を取得したいと考えております。
http://d.hatena.ne.jp/keyword/%A4%CF%A4%C6%A4%CA%A5%D6%A5%C3%A5%AF%A5%DE%A1%BC%A5%AF%B7%EF%BF%F4%BC%E8%C6%C0API?kid=146686

下記ソースにて、「XML_RPC_Manager.getBookMarkCount()」を呼び出すと
Return DirectCast(proxy.getBookMarkCount("http://http://www.google.co.jp/"), BookMarks())
実行後に「Expectation Failed」のエクセプションが発生してしまいます。
解決の糸口すら見出せず困っております。
どなたか情報をお持ちでしたらご教授ください。
よろしくお願いいたします。

Imports CookComputing.XmlRpc
Namespace Common.XmlRpc
#Region "インターフェース"
<XmlRpcUrl("http://b.hatena.ne.jp/xmlrpc")> _
Public Interface ProxyHatena
Inherits IXmlRpcProxy
'ブックマーク数取得メソッド
<XmlRpcMethod("bookmark.getCount")> Function getBookMarkCount(ByVal url As String) As Object

End Interface
#End Region
Public Class XML_RPC_Manager
#Region "API structs"
<XmlRpcMissingMapping(MappingAction.Ignore)> _
Public Structure BookMarks
Public name As String
Public value As String
End Structure
#End Region
#Region "メソッド"
Public Function getBookMarkCount() As BookMarks()
Dim proxy As ProxyHatena = CType(XmlRpcProxyGen.Create(GetType(ProxyHatena)), ProxyHatena)
Return DirectCast(proxy.getBookMarkCount("http://www.google.co.jp/"), BookMarks())
End Function
#End Region
End Class
End Namespace

コメント(2)

下記のコードで1URLに対してはブックマーク数を取得することが出来ましたが、
複数のURLを引き渡しての取得が今だ出来ません。
どなたか情報をお持ちでしたらご教授ください。
よろしくお願いいたします。

Imports CookComputing.XmlRpc
Imports XML_RPC_TEST.XML_RPC

Public Class Form1
<XmlRpcUrl("http://b.hatena.ne.jp/xmlrpc")> _
Interface IHatenaBookMark
<XmlRpcMethod("bookmark.getCount")> _
Function getCount(ByVal urls As String) As XmlRpcStruct
End Interface

Private Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
Dim mystruct As XmlRpcStruct
Dim HatenaProxy As IHatenaBookMark = DirectCast(XmlRpcProxyGen.Create(GetType(IHatenaBookMark)), IHatenaBookMark)
Dim params As String = "http://www.google.co.jp/"
Try
mystruct = HatenaProxy.getCount(params)

For Each d As DictionaryEntry In mystruct
Console.WriteLine(d.Key & " : " & d.Value)
Next
Catch fex As XmlRpcFaultException
Console.Write("Fault Response: " + fex.FaultCode + " " + fex.FaultString)
End Try
End Sub
End Class
Imports CookComputing.XmlRpc
Public Class Form1
  <XmlRpcUrl("http://b.hatena.ne.jp/xmlrpc")> _
  Interface IHatenaBookMark
    <XmlRpcMethod("bookmark.getCount")> _
    Function getCount(ByVal ParamArray urls() As String) As XmlRpcStruct
  End Interface

  Private Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
    Dim mystruct As XmlRpcStruct
    Dim HatenaProxy As IHatenaBookMark = DirectCast(XmlRpcProxyGen.Create(GetType(IHatenaBookMark)), IHatenaBookMark)

    Dim params(2) As String
    params(0) = "http://www.google.co.jp/"
    params(1) = "http://www.yahoo.co.jp/"
    params(2) = "http://www.msn.co.jp/"
    Try
      mystruct = HatenaProxy.getCount(params)
      For Each d As DictionaryEntry In mystruct
        Console.WriteLine(d.Key & " : " & d.Value)
      Next
    Catch fex As XmlRpcFaultException
      Console.Write("Fault Response: " + fex.FaultCode + " " + fex.FaultString)
    End Try
  End Sub
End Class

------
こんなもんでどうでしょう。

ログインすると、みんなのコメントがもっと見れるよ

mixiユーザー
ログインしてコメントしよう!

Visual Basic User's Club 更新情報

Visual Basic User's Clubのメンバーはこんなコミュニティにも参加しています

星印の数は、共通して参加しているメンバーが多いほど増えます。

人気コミュニティランキング