0

Vkontakte でユーザーに関するすべての情報を取得しようとしています。初めて、uidを1つ挿入すると、うまく機能します。しかし、2 つ以上の uid を挿入すると:

<?xml version=\"1.0\" encoding=\"utf-8\"?><error><error_code>100</error_code>                                               
<error><error_code>100</error_code> 
<error_msg>One of the parameters specified was missing or invalid: user_id not            
integer</error_msg><request_params list=\"true\"><param><key>oauth</key><value>1</value>

等々。

私のコード:

public System.Xml.XmlDocument GetUsers(string[] user_ids, string[] fields, string name_case)
    {
        NameValueCollection qs = new NameValueCollection();
        String uids = user_ids[0];
        String myFields = fields[0];

        for (int i = 1; i < user_ids.Length; i++)
        {
                uids += "," + user_ids[i];               
        }
        for (int i = 1; i < fields.Length; i++)
        {
                myFields += "," + fields[i];               
        }
        qs["user_id"] = uids;
        qs["fields"] = myFields;
        qs["name_case"] = name_case;

        XmlDocument doc = Logic.ExecuteCommand("users.get", qs, "");
        if (doc != null)
            return doc;
        else throw new NotImplementedException();
    }

users.get 関数のドキュメント: http://vk.com/dev/users.get

コンマを使用する必要があると言われています: Param user_ids: ユーザー ID またはスクリーン名 (screen_name)。デフォルトでは、現在のユーザー ID。カンマ区切りの文字列をリストします。許可される要素の最大数は 1000 です。

複数の uid を挿入してリクエストする方法を教えてください。ありがとう。

4

1 に答える 1

2

「user_id」の代わりに「uids」パラメーター名を使用する必要があるため、コードでは

qs["uids"] = uids;
于 2014-03-29T07:44:16.337 に答える