我在.Netcore 2.0中使用angular 5。我正在使用API控制器来处理推文(LinqToTwitter)。这些推文来自我的打字机,来自控制器,除了statusID
(长度为19位数字)之外,其他都很好。
statusID
应该是:
XXXXXXXXXXXXXXXX573
,但键入脚本的过程如下: XXXXXXXXXXXXXXXX600
API控制器:
[HttpPost("[action]")]
public async Task<Search> GetAllTweetsByNamePost([FromBody] SearchQuery searchQuery)
{
searchVal = searchQuery.Name;
Twitter twit = new Twitter();
twit.Initialise();
var t = await twit.Fetch(searchVal, 50, true, SearchType.Search);
return t[0];
}
当我在控制器中检查Status
ID时,它会显示正确的ID,但是到达TS statusID
的时间有所不同,并且数字中有一个模式。
前16位正确,后3位以100为例递增。
XXXXXXXXXXXXXXXX100 XXXXXXXXXXXXXXXX200 XXXXXXXXXXXXXXXX300
在Api控制器中,我正在使用LinqToTwitter
Status
object
。 Status
object
中属性的类型是公共ulong SinceID { get; set; }
,并且我已将TS模型的属性设置为statusID: any;
getSocialDataTwitter(searchQuery) {
const headers = new HttpHeaders().set('content-type', 'application/json');
return this.http.post<LeftOperatorPaneltwitter>(this.baseUrl + 'api/OperationData/GetAllTweetsByNamePost', '{"Name":"' + searchQuery + '"}', { headers }).subscribe(result => {
this.tweets = result;
result.statuses.forEach(search => {
console.log(search.statusID + ' This is my Status ID');
})
}, error => console.error(error));
}
答案 0 :(得分:1)
JavaScript无法处理这种长度的数字。根据{{3}},最大安全整数值为:9007199254740991
。建议您将您的ID表示为string
。