gpt4 book ai didi

json - Twitter 的 WCF REST JSON 集合为空

转载 作者:行者123 更新时间:2023-12-02 03:46:18 25 4
gpt4 key购买 nike

我像这样发出 friend /ID 电话:

GET /1.1/friends/ids.json?screen_name=blablabla HTTP/1.1

发出有效响应:

{"ids":[97500486,32947624,8884440,2022687,28741369,33978239,10312111,950922,7682036,21688137,7696145,15876098],"next_cursor":0,"next_cursor_str":"0","previous_cursor":0,"previous_cursor_str":"0"}

我的界面是这样的:

[OperationContract(Name = "ids.json")]
[WebGet(ResponseFormat = WebMessageFormat.Json, UriTemplate="ids.json?user_id={userId}&screen_name={screenName}")]
FriendsIdsResponse Ids(long? userId, string screenName);

[DataContract]
public class FriendsIdsResponse
{
public FriendsIdsResponse()
{
}

[DataMember(Name = "ids")]
public long[] Ids { get; set; }
[DataMember(Name = "previous_cursor")]
public int PreviousCursor { get; set; }
[DataMember(Name = "next_cursor")]
public int NextCursor { get; set; }
}

无论Ids是什么类型(long[]、IList、List等),它总是返回null。如果我在 ctor 中将它实例化为一个空列表,它的计数==0。

更新 WCF 配置,按要求:

<system.serviceModel>
<client>
<endpoint contract="TA.Twitter.Service.IFriends, TA.Twitter.Interfaces"
address="https://api.twitter.com/1.1/friends/"
binding="webHttpBinding" bindingConfiguration="WebHttpBinding"
></endpoint>
</client>
<bindings>
<webHttpBinding>
<binding name="WebHttpBinding" allowCookies="true">
<security mode="Transport">
</security>
</binding>
</webHttpBinding>
</bindings>
</system.serviceModel>

最佳答案

不是一个完整的答案,但是您是否限制使用 WCF 来调用 Tweeter API?我是 WCF 的忠实粉丝,但对于 Twitter 来说,已经有很多 .net 库了。我知道 WCF 中存在挑战,但我不想每次都重新发明轮子。

Tweetsharp似乎是用于 Twitter API 访问的流行 .net 库。

假设您已经拥有 OAuth token ,只需不到 10 行代码即可完成获取好友。

    var service = new TweetSharp.TwitterService("consumerKey", "consumerSecret");
service.AuthenticateWith("accessToken", "accessTokenSecret");

var friends = service.ListFriendIdsOf(new TweetSharp.ListFriendIdsOfOptions() { ScreenName = "blabla" });
foreach (var friend in friends)
{
Console.WriteLine("new friend :{0} ", friend);
}

不到10行,不到10分钟,似乎是一个很好的折衷

关于json - Twitter 的 WCF REST JSON 集合为空,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16855342/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com