首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >heroku部署中的网页导航问题

heroku部署中的网页导航问题
EN

Stack Overflow用户
提问于 2021-12-08 06:45:12
回答 1查看 78关注 0票数 0

我正在使用TD美国人的API,并试图为访问令牌刷新过程实现一个自动化的工作流。我已经选择使用npm包“傀儡旅行者”以编程方式登录到TD Ameritrade网站,并从一个URI中检索我的代码(需要URL解码访问令牌刷新过程所需的长字符串),在登录并接受访问我的交易帐户的进一步权限的条件后,该URI将被重定向到该URI。

在我的头上一切都很好,但是当我将代码部署到heroku时,对URI的重定向不会发生,而且我只能在重定向到URI之前获取我所在站点的URL。

这是我的代码:

代码语言:javascript
复制
const getTdAmeritradeCode = async () => {
    const browser = await puppeteer.launch({
        headless: true,
        args: ['--no-sandbox','--disable-setuid-sandbox']
    });

    const page = await browser.newPage();
    await page.goto(process.env.REFRESH_TOKEN_REFRESH_LINK);
    await page.type("#username0", process.env.TD_AMERITRADE_USERNAME);
    await page.type("#password1", process.env.TD_AMERITRADE_PASSWORD);
    const [response0] = await Promise.all([
        page.waitForNavigation(),
        page.click("#accept"),
    ]);
    const [response1] = await Promise.all([
        page.waitForNavigation(),
        page.click("#accept"),
    ]);

    let tdAmeritradeCode = decode(await page.url().slice(50)); // 50 is the number of characters in the url before the code
    await browser.close();
    return tdAmeritradeCode;
}

这是我在木偶师文档中找到的方法,但它似乎不起作用。正如我前面所说的,代码在我的机器上按预期工作,但是当部署在heroku上时,代码就会失败,并且不会被重定向到URI。

EN

回答 1

Stack Overflow用户

发布于 2022-03-29 07:55:27

问题是,我让我的TD美国版应用程序重定向到我的Heroku应用程序的URL。我相信,这是因为Heroku应用程序不打算向自己发出GET请求。最后,我在我的TD、Ameritrade和Heroku应用程序中更改了重定向URI,并且我能够毫无问题地获得代码。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70270966

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档