我有一个传奇,它每30秒检查一次API调用的状态,如果调用返回的状态成功,则saga将结束,如果不是,则saga等待30秒并再次尝试。如果API调用在60分钟内没有返回成功的响应,则将超时并结束saga。
我很难让我的60分钟超时时间被触发。我的代码是
public class MonitorSubmissionFeedSagaData: IContainSagaData
{
public Guid Id { get; set; }
public string Originator { get; set; }
public string OriginalMessag
我有一个React Native应用程序,可以连接到不同的API端点。某些用户可能需要在运行时更改API终结点,而无需重新启动应用程序。所有的API请求都绑定到sagas,根saga看起来像这样
export default function* rootSaga() {
yield [
takeLatest([
ONE_REQUEST,
ANOTHER_REQUEST,
// a bunch of sagas that are responsible for API querying
], api); // <- here, api
我在“usersaga.js”中定义了下面的redux中间件函数
import {call, put, takeEvery, takeLatest} from "redux-saga/effects";
import {REQUEST_API_DATA, receiveApiData} from '../store/actions';
import userServiceObject from '../services/user.service';
// Worker Saga function will be fired on USER_
我正在尝试理解redux-saga是如何工作的,用react,redux和react-redux实现了一个简单的例子(一个按钮,当点击这个按钮时,从一个API中获取一个用户,然后reducer将这个用户添加到存储中)。
这是我的传奇(使用console.logs进行调试):
import { take, call, put } from 'redux-saga/effects';
import { GET_USER, setUser } from './actions/actionCreators';
export default function * w
我还不太熟悉复古传奇。我试图在saga函数中使用警报,以防止API的超时响应。我强迫你恢复暂停警报开始工作了。
然而,这一传奇仍在继续。我不知道如何暂停它,只有当用户按下“确定”按钮的警报。我的意图是显示连接或API问题,在警报或模式,并继续,只有当它被恢复。
function* sagaExample (action) {
// code
const response = yield call(apiRequest, data) // It will return "TIMEOUT" string in case of timeout
if (r
我正在构建一个简单的react/redux应用程序,它使用jsonp向发出请求。我使用redux-saga与一起处理api调用。我在saga中进行调用,它返回一个承诺,但在我可以将操作和响应数据发送到reducer之前,该承诺就超时了。还有一个全局回调函数,它似乎接收响应数据,但我不知道它会在传奇的流程中去哪里,或者我甚至根本不需要使用它。
import { takeEvery, call, put } from 'redux-saga/effects';
import jsonp from 'jsonp-promise';
let setVideoCallb
我需要从redux获得一个状态,以便在saga文件中的API调用上使用它。
我检查了select API。但这是个问题。
我只想为API调用使用一个函数。要运行这个函数,我需要从redux获取当前状态。与其把它放在生成器函数中,我没有成功地使用select。
async function getApi(){
// GET THE STATE IN THE NEXT LINE
try{
const callByCity = await fetch(`https://www.test.com/APICALL${REDUX STATE}...
`)