标签: fetch

Heroku Rails API 在获取后请求时给出 500 内部服务器错误

我正在尝试向上传到 Heroku 的 Rails API 发出 POST 请求。目前我正在使用邮递员进行测试,只是为了确保它在那里工作,然后再继续在 heroku 应用程序之间进行测试。在本地,我能够与 React 前端和 Rails API 后端进行交互。本地主机没有问题。

URL: https://appname.herokuapp.com/api/v1/users/

headers: 
key: Access-Control-Allow-Origin, value: *
//I have also removed the access control allow origin so with and without.
key: Content-type, value: application/json
Run Code Online (Sandbox Code Playgroud)

创建用户时传入的数据确实已创建,但返回响应是 500 内部服务器错误

[
{
"id": 1,
"first_name": "Roger",
"last_name": "Perez",
"email": "roger@yahoo.com",
"birthday": "2000-10-10",
"gender": "male",
"avatar": null,
"home_base": null,
"initials": null,
"comments": [],
"events": [],
"user_events": [],
"messages": []
},
Run Code Online (Sandbox Code Playgroud)

导轨

class Api::V1::UsersController < ApplicationController
  # before_action :requires_login, only: …
Run Code Online (Sandbox Code Playgroud)

ruby-on-rails heroku fetch http-status-code-500

0
推荐指数
1
解决办法
3454
查看次数

如何正确使用 Nuxt 2.12 中新的 fetch() 钩子进行 SSR?

我将 Nuxt 更新到最新版本,因为他们引入了新的fetch()钩子。在我的项目中,我从 Prismic 检索数据。之前,我使用的是asyncData(),但是在导航时,需要一些时间才能渲染页面asyncData()(这就是它的工作原理)。

理想的解决方案是在该特定页面上导航,并在检索数据时显示加载动画。新的fetch()钩子看起来很合适,因为它暴露了$fetchState.pending以便检查操作的状态。

现在,代码(我正在从商店的类别中检索子类别):

        data(){
            return{
                docs: []
            }
        },

        async fetch() {
            try{
                const res = await this.$prismic.api.query(this.$prismic.predicates.at('my.category.uid', this.$route.params.sub))
                const el = res.results[0]
                const query = await this.$prismic.api.query([this.$prismic.predicates.at('document.type','sub-category'), this.$prismic.predicates.at('my.sub-category.category', el.id)], { orderings: '[my.sub-category.position, my.sub-category.title]' })
                this.docs = query.results
            }   
            catch (e) {
                console.log(e)
            }
        }
Run Code Online (Sandbox Code Playgroud)

这至少在客户端有效。这对于正确的 SSR 有效吗?我的意思是,在asyncData()(在服务器端调用)中,this是不可访问的,data(). asyncData()如果这是正确的解决方案,那么再使用又有什么用fetch()呢?

fetch vue.js server-side-rendering nuxt.js

0
推荐指数
1
解决办法
8105
查看次数

Discord.JS fetchMessage()

I have a problem with my Discord.JS Bot, I wanna to edit a embed in a spefic guild and channel, but when I try to run the commands, it errors out with this

/root/my-bot/my-bot.js:550
    guild.channels.get(channel).fetchMessage(user).edit(newMessage);
                               ^

TypeError: Cannot read property 'fetchMessage' of undefined
at Client.<anonymous> (/root/my-bot/my-bot.js:550:31)
at Client.emit (events.js:315:20)
at MessageCreateHandler.handle (/root/my-bot/node_modules/discord.js/src/client/websocket/packets/handlers/MessageCreate.js:9:34)
at WebSocketPacketManager.handle (/root/my-bot/node_modules/discord.js/src/client/websocket/packets/WebSocketPacketManager.js:105:65)
at WebSocketConnection.onPacket (/root/my-bot/node_modules/discord.js/src/client/websocket/WebSocketConnection.js:333:35)
at WebSocketConnection.onMessage (/root/my-bot/node_modules/discord.js/src/client/websocket/WebSocketConnection.js:296:17)
at WebSocket.onMessage (/root/my-bot/node_modules/ws/lib/event-target.js:120:16)
at WebSocket.emit (events.js:315:20)
at Receiver.receiverOnMessage (/root/my-bot/node_modules/ws/lib/websocket.js:789:20)
at Receiver.emit (events.js:315:20)
Run Code Online (Sandbox Code Playgroud)

Here's my command code:

 if(message.content.startsWith(prefix + "edit")) …
Run Code Online (Sandbox Code Playgroud)

javascript fetch node.js discord.js

0
推荐指数
1
解决办法
1504
查看次数

页面重新加载 Nuxt.js 时出现未定义数据错误

我目前正在使用 Nuxt.js 开发一个通用应用程序,大多数页面上的数据是使用 fetch hook 以及 vuex 存储从 API 检索的。我开始注意到页面重新加载/刷新时出现错误,有时当我从导航栏访问页面时出现错误。页面错误为:

TypeError: Cannot read property 'data' of undefined
Run Code Online (Sandbox Code Playgroud)

其中 data 是从 API 检索的对象。我在互联网上搜索了这一点,发现它与数据未加载或页面渲染而数据未完全检索有关。我找到了一种解决方法,在模板上使用 v-if 来检查数据是否已设置,然后显示内容。我的问题是是否有办法实现此目的,我尝试使用 async/await 关键字,但它没有帮助,而且我觉得 v-if 方法不是处理它的最佳方法。

编辑:使用 fetch() 时使用 $fetchState.pending 解决

fetch vue.js axios vuex nuxt.js

0
推荐指数
1
解决办法
3324
查看次数

Next.JS - 进行外部 API 调用时会在前面添加 localhost

我有一个简单的 Next 应用程序,我在其中进行外部 API 调用来获取一些数据。这工作得很好,直到几天前 - 当应用程序发出 API 请求时,我可以在网络选项卡中看到它尝试调用的 URL,在需要的localhost:3000实际 URL 前面添加了下一个应用程序的地址 ( )被调用,例如:而不是http://{serverAddress}/api/articles调用http://localhost:3000/{serverAddress}/api/articles,并且该请求解析为404 Not Found.

为了进行 API 调用,我使用fetch. 在发出请求之前,我已记录了传入的 URL fetch,它是我需要的正确 URL。我还通过使用Postman向预期的 URL 发出请求,确认我的 API 正在按预期工作。

我没有尝试过使用其他库来axios提出此请​​求,因为考虑到我的应用程序仅使用即可完美运行,所以这是没有意义的,fetch所以我想了解为什么会在我未来的体验中发生这种情况。

自从我的应用程序运行以来,我没有进行任何代码更改,但是,我对我的服务进行了Docker 化,因此我使用Ubuntu安装了DockerWSL2。我正在另一台机器上部署这些容器,现在当这个问题发生时,我调用的 API 和 Next 应用程序都直接在我的开发机器上运行。

我看到这篇文章,我确认 URL 中没有任何空格,但是,正如一条评论提到的,我安装了WSL2,但是,我没有通过 WSL 终端运行该应用程序。另外,我尝试执行wsl --shutdown看看是否有帮助,不幸的是问题仍然存在。如果这是问题的原因,我该如何解决?卸载WSL2?如果不是,导致该问题的另一个可能原因是什么?

提前致谢。

编辑:我用来调用的代码fetch

fetcher.js

export const fetcher …
Run Code Online (Sandbox Code Playgroud)

fetch next.js wsl-2

0
推荐指数
1
解决办法
4819
查看次数

JSON 存储在响应变量中的哪里?

fetch() 响应变量中的 JSON 数据存储在哪里?

我尝试通过检查标题来检查控制台中的属性,但我在那里看不到它。

在此输入图像描述

javascript json fetch

-1
推荐指数
1
解决办法
1048
查看次数

Reactjs 中的 setState 不是函数

我是新来的反应,我试图使用 APIfetchsetState状态变量命中 API ,但它抛出错误为

Unhandled Rejection (TypeError): Object(...) is not a function
Run Code Online (Sandbox Code Playgroud)

这是代码-> CodeSandboxLink

import React from "react";
import { useState, useEffect, setState } from "react";
import "./styles.css";

export default function App() {
  const [person, setPerson] = useState([]);
  fetch("https://jsonplaceholder.typicode.com/users")
    .then((response) => {
      return response.json();
    })
    .then((data) => {
      setState(data);
    });
  console.log("dasdasd", person);
  return <div className="App">{JSON.stringify(person)}</div>;
}
Run Code Online (Sandbox Code Playgroud)

请建议我哪里做错了。

javascript fetch setstate reactjs react-hooks

-1
推荐指数
1
解决办法
73
查看次数

fetch 后得到什么以及如何处理

请求后,我在正文中得到响应,它看起来像 [{...}]。在我的浏览器控制台中,它被视为数组。但 console.log(users[0]) 被解释为未定义。为什么我无法获取用户对象的第一个元素?

    async function getUsers() {
    const response = await fetch("/api/users");
    const users = await response.json();
    return users;
}

let users = getUsers();
console.log(users[0]);
console.log(users);
Run Code Online (Sandbox Code Playgroud)

javascript fetch

-1
推荐指数
1
解决办法
122
查看次数

如何使用PDO通过此语句获取数据并仅检索第一列?

正如标题所述,我只能抓取id列,我得到其他人的Undefined索引错误.

我的代码:

if(isset($_SESSION['id'])) {
    $presh = $_SESSION['id'];
    $stmt = $pdo->prepare("SELECT id FROM users WHERE id = :id");
    $id = $presh;
    $stmt->execute(array(':id'=>$id));
    $accountinfo = $stmt->fetch(PDO::FETCH_ASSOC);
}
Run Code Online (Sandbox Code Playgroud)

稍后在我的代码中我引用它:

Karma <span id="kcurrent"><?php echo $accountinfo["karmacurrent"]; ?></span> | <span id="ktotal"><?php echo $accountinfo["karmatotal"]; ?></span>
Run Code Online (Sandbox Code Playgroud)

行确实存在并且它们已经填满,我做错了什么?

php mysql pdo fetch

-25
推荐指数
1
解决办法
549
查看次数