标签: fetch

React:获取DELETE和PUT请求

我用Fetch得到了GET和POST方法之外的东西.但我找不到任何好的DELETE和PUT示例.

所以,我问你.你能举一个带有fetch的DELETE和PUT方法的好例子吗?并解释一下.

javascript http-put fetch http-delete reactjs

23
推荐指数
6
解决办法
6万
查看次数

在React-Native App中使用Axios GET和授权标头

我正在尝试使用axios来获取带有需要Authorization标头的API的GET请求.

我目前的代码:

const AuthStr = 'Bearer ' + USER_TOKEN;
Run Code Online (Sandbox Code Playgroud)

其中,USER_TOKEN被访问令牌需要.这个字符串连接可能是问题,好像我发布这个AuthStr = 'Bearer 41839y750138-391',以下GET请求工作并返回我之后的数据.

axios.get(URL, { 'headers': { 'Authorization': AuthStr } })
  .then((response => {
    console.log(response.data);
  })
  .catch((error) => {
    console.log(error);
  });
Run Code Online (Sandbox Code Playgroud)

我也尝试将其设置为全局标题但没有成功.

fetch http-headers oauth-2.0 react-native axios

23
推荐指数
2
解决办法
6万
查看次数

PDO fetch语句之间是否存在性能差异?

/* Exercise PDOStatement::fetch styles */
print("PDO::FETCH_ASSOC: ");
print("Return next row as an array indexed by column name\n");
$result = $sth->fetch(PDO::FETCH_ASSOC);
print_r($result);
print("\n");

print("PDO::FETCH_BOTH: ");
print("Return next row as an array indexed by both column name and number\n");
$result = $sth->fetch(PDO::FETCH_BOTH);
print_r($result);
print("\n");

print("PDO::FETCH_LAZY: ");
print("Return next row as an anonymous object with column names as properties\n");
$result = $sth->fetch(PDO::FETCH_LAZY);
print_r($result);
print("\n");

print("PDO::FETCH_OBJ: ");
print("Return next row as an anonymous object with column names as properties\n");
$result = $sth->fetch(PDO::FETCH_OBJ);
print …
Run Code Online (Sandbox Code Playgroud)

php pdo fetch

22
推荐指数
2
解决办法
1万
查看次数

React Native - 获取缓存的提取

我正在使用react native构建一个应用程序,它使得获取调用依赖于来自服务器的最新信息.我注意到它似乎缓存了响应,如果我再次运行该fetch调用,它将返回缓存的响应,而不是来自我的服务器的新信息.

我的功能如下:

goToAll() {
  AsyncStorage.getItem('FBId')
    .then((value) => {
      api.loadCurrentUser(value)
        .then((res) => {
          api.loadContent(res['RegisteredUser']['id'])
            .then((res2) => {
              console.log(res2);
              this.props.navigator.push({
                component: ContentList,
                title: 'All',
                passProps: {
              content: res2,
            user: res['RegisteredUser']['id']
          }
        })
      });
    });
  })
  .catch((error) => {console.log(error);})
  .done();
}
Run Code Online (Sandbox Code Playgroud)

而api.js im调用的函数如下:

loadContent(userid){
  let url = `http://####.com/api/loadContent?User_id=${userid}`;
  return fetch(url).then((response) => response.json());
}
Run Code Online (Sandbox Code Playgroud)

caching fetch reactjs react-native

22
推荐指数
2
解决办法
1万
查看次数

获取后调用后重定向

我正在创建一个带有访问管理(AM)服务器的社交登录页面.当用户单击登录按钮时,我会对AM服务器进行提取http调用.AM服务器生成带有auth cookie的HTTP 301重定向响应到社交登录页面.我需要以某种方式关注此重定向响应并在Web浏览器中显示新内容.

UI:ReactJS

请求:

POST /api/auth/socialauth/initiate HTTP/1.1
Host    example.com
User-Agent  Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:49.0)
Accept  */*
Accept-Language en-US,en;q=0.5
Accept-Encoding gzip, deflate
origin  http://web.example.com:8080
Referer http://web.example.com:8080/myapp/login
Cookie  authId=...; NTID=...
Run Code Online (Sandbox Code Playgroud)

响应

HTTP/1.1 307 Temporary Redirect
https://www.facebook.com/dialog/oauth?client_id=...&scope=public_profile%2Cemail&redirect_uri=http%3A%2F%2Fam.example.com%3A8083%2Fopenam%2Foauth2c%2FOAuthProxy.jsp&response_type=code&state=qtrwtidnwdpbft4ctj2e9mv3mjkifqo
Run Code Online (Sandbox Code Playgroud)

反应代码:

initiateSocialLogin() {
    var url = "/api/auth/socialauth/initiate";

    fetch(url, { method: 'POST' })
        .then(response => {
            // HTTP 301 response
            // HOW CAN I FOLLOW THE HTTP REDIRECT RESPONSE?
        })
        .catch(function(err) {
            console.info(err + " url: " + url);
        });
}
Run Code Online (Sandbox Code Playgroud)

我如何遵循重定向响应并在Web浏览器中显示新内容?

redirect fetch reactjs

21
推荐指数
4
解决办法
3万
查看次数

如何处理来自“不透明”类型的获取响应?

我正在尝试正确解释从 fetch 调用到 URL 的响应,我认为它是一个 json 字符串。我已经根据这里的类似帖子尝试了许多变体,但没有什么能让我使用有用的数据。这是一种尝试:

fetch('http://serverURL/api/ready/', {method: "POST", mode: "no-cors"})
    .then(function(response) { 
        response.json().then(function(data) {
            console.log('data:' + data);
        });
    })
    .catch(function(err) {
        console.log('Fetch Error :-S', err);
    });
Run Code Online (Sandbox Code Playgroud)

这会在控制台中返回一个语法错误:

SyntaxError: JSON.parse: JSON 数据第 1 行第 1 列的数据意外结束

所以也许它不是 JSON...如果我在 console.log 行上放置一个断点,并将鼠标悬停在响应(上面的行)上,我会看到带有各种字段的响应对象 (?):

来自调试器悬停的响应对象

不知道如何解释...status:0 表明它没有得到有效的响应。但是,如果我检查开发人员工具中的 Network 选项卡,然后单击 fetch 行,则状态为 200,并且响应窗口/JSON 部分会显示消息信息,如果您只是将 URL 放入浏览器 URL 中,您也会看到这些信息直接酒吧。与显示 JSON 字符串的“响应负载”部分一样:

{"msg": "API 已准备就绪。", "success": true}

所以......它看起来像json,不是吗?但是 fetch 无法将其作为 json 摄取?

这是另一种变体,但使用 response.text() 而不是 response.json()

fetch('http://serverURL/api/ready/', {method: "POST", mode: "no-cors"})
    .then((response) => {
        console.log(response);
        response.text().then((data) …
Run Code Online (Sandbox Code Playgroud)

javascript json fetch

21
推荐指数
1
解决办法
2万
查看次数

React.js:使用Fetch API加载JSON数据,并从对象数组中加载道具

对于react.js来说是新手,在完成教程和阅读文档之后,我仍然在使用js fetch从JSON文件加载我的数据以及从对象数组中设置属性.我也不确定我是否正在我的事件处理程序中正确访问DOM属性.我必须错过一些相当简单的事情.

作为参考,这里是我的代码与项目的其余部分这里就是它应该的样子.

ETA:我从文档中不知道babel浏览器已被弃用,因此决定只使用带有ES5语法的直接Javascript而不是JSX.代码在下面更新,但它仍然没有呈现标记.

var CanvasAnimation = React.createClass({
    getInitialState: function() {
        return {data: []};
    },                            
    loadData: function() {
        /*
        fetch("data.json")
            .then(function(response) {
                return response.json    
                    .then(function(json){
                        this.setState({data: json});
                    }.bind(this))
            }.bind(this));
        */
        const data = [
            { id: "stalkerOne", width: 225, height: 434, spriteSheetURL: 'spriteSheets/stalkerone.jpg', rows: 5, columns: 5, totalFrames: 24 },
            { id: "stalkerTwo", width: 175, height: 432, spriteSheetURL: 'spriteSheets/stalkertwo.jpg', rows: 6, columns: 5, totalFrames: 26 },
            { id: "stalkerThree", width: 251, height: 432, spriteSheetURL: 'spriteSheets/stalkerthree.jpg', rows: 6, …
Run Code Online (Sandbox Code Playgroud)

javascript json fetch reactjs

20
推荐指数
2
解决办法
9万
查看次数

为什么浏览器会忽略set-cookie标头,并且使用fetch不会从Ajax调用中保存cookie?

出于某种原因,我的浏览器(我尝试了几个)不设置cookie,即使服务器返回有效的set-cookie响应,当使用fetch api 通过Ajax进行GET调用来发出请求时

如果我通过将URL放在浏览器中进行相同的GET调用,则浏览器会尊重(相同的)set-cookie响应头并保存cookie.

我通过LiveHeaders和Chrome网络检查器检查了请求和响应标头,没有区别.

编辑:澄清一下,这不是ajax向服务器发送cookie的问题.这是一个问题,当一个响应返回时,有效的set-cookies标题(根据文档应该遵守是否ajax),浏览器根本不保存cookie.

javascript cookies ajax fetch

20
推荐指数
1
解决办法
1万
查看次数

如何在webpack中正确填充URLSearchParams?

我有一个使用fetch polyfill的项目isomorphic-fetch.我想用URLSearchParams来提交POST数据.对于fetch以支持URLSearchParams,它首先检查它是否在全局对象中可用.我虽然使用这个 polyfill但我不知道如何在webpack中正确导入它,所以fetch注意到它是可用的.

我怎么能做到这一点?谢谢!

javascript fetch polyfills webpack

20
推荐指数
1
解决办法
1万
查看次数

如何使用Redux-Saga处理fetch()响应中的错误?

我尝试Unauthorized使用redux-saga 处理来自服务器的错误.这是我的传奇:

function* logIn(action) {
  try {
    const user = yield call(Api.logIn, action);
    yield put({type: types.LOG_IN_SUCCEEDED, user});
  } catch (error) {
    yield put({type: types.LOG_IN_FAILED, error});
  }
}
Run Code Online (Sandbox Code Playgroud)

我获取这样的数据:

fetchUser(action) {
  const {username, password} = action.user;
  const body = {username, password};
  return fetch(LOGIN_URL, {
    method,
    headers: {
      'Accept': 'application/json',
      'Content-Type': 'application/json',
    },
    body: JSON.stringify(body)
  })
    .then(res => {
      res.json().then(json => {
        if (res.status >= 200 && res.status < 300) {
          return json
        } else {
          throw res
        }
      }) …
Run Code Online (Sandbox Code Playgroud)

javascript fetch redux redux-saga

20
推荐指数
1
解决办法
1万
查看次数