gpt4 book ai didi

javascript - 如何在 Angular 中使用 promise 并摆脱使用超时

转载 作者:行者123 更新时间:2023-11-29 20:54:05 25 4
gpt4 key购买 nike

<分区>

我正在尝试等待服务器返回一些数据,然后进行另一个回调。这是我的代码

commonApp.factory('replyMessageFactory', ['$q', '$http', '$log', function ($q, $http, $log) {
var factoryObj = {};

factoryObj.send = function (obj) {
var req = {
method: 'POST',
url: "/api/ThreadMessage",
headers: {
'Content-Type': 'application/json; charset=utf-8'
},
data: obj
}

return $http(req);
}
return factoryObj;
}
]);

我正在调用这个工厂方法,如下所示

scope.sendReply = function () {
updateModel();
var replyModelValue = scope.replyModel;
replyMessageFactory.send(scope.replyModel).then(function (data) {
scope.clear();
scope.updateThread(replyModelValue);
});
}

问题是我没有从后端获取最新数据。如果我添加超时然后它工作。难道也是后端的原因?

我的后端api是这样的

public async Task<HttpResponseMessage> Post(ThreadMessageModel messageData)
{

try
{
await _findMessageService.AddMessageReply(findmessage);
return new HttpResponseMessage(HttpStatusCode.OK);
}
catch (Exception exception)
{
Log.Log(EventSeverity.Error, new { Message = "Could not create message", exception });
throw new Exception(string.Format("Kan ikke opprette melding. {0}", exception));
}
}


public Task<int> AddMessageReply(FindMessage message)
{
try
{
client.Update<FindMessage>(message.Id).Field(x => x.Replies, message.Replies).Execute();
return Task.FromResult(1);
}
catch (Exception exception)
{
log.Log(EventSeverity.Error, "Could not add message and feedback status", exception);
throw;
}
}

有什么想法吗?

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