import 'whatwg-fetch';

import 'es6-promise';

require('es6-promise').polyfill();

import * as common from 'common/common.js';

function checkStatus(response) {

if (response.status >= 200 && response.status < 300) {

return response.text();

} else {

common.toast("请求错误");

common.closeLoading();

var error = new Error(response.statusText);

error.response = response;

throw error;

}

}

function parseJSON(response) {

var result = JSON.parse(response);

if(result.code == "99"){

common.closeLoading();

common.gotoLogin();

}

return result;

}

// 发送 get 请求

export function get(url) {

url = common.urlTransmit(url);

var headers = {

'Accept': 'application/json',

'Content-Type' : 'application/json'

}

if(common.tvToken()){

headers.tvToken = common.tvToken()

}

let requestConfig = {

credentials: 'include',

method: "GET",

headers: headers

}

return fetch(url, requestConfig).then(checkStatus).then(parseJSON);

}

// 发送 post 请求

export function post(url, paramsObj) {

url = common.urlTransmit(url);

var headers = {

'Accept': 'application/json, text/plain, /',

'Content-Type': 'application/x-www-form-urlencoded'

}

if(common.tvToken()){

headers.tvToken = common.tvToken()

}

return fetch(url, {

method: 'POST',

credentials: 'include',

headers: headers,

body: obj2params(paramsObj)

}).then(checkStatus).then(parseJSON);

}

// 将对象拼接成 key1=val1&key2=val2&key3=val3 的字符串形式

function obj2params(obj) {

var result = '';

var item;

for (item in obj) {

result += '&' + item + '=' + encodeURIComponent(obj[item]);

}

if (result) {
result = result.slice(1);
} return result;

}

react -搭建服务的更多相关文章

  1. react -搭建服务-2

    export const DEFAULT_TITLE = "你好"; // export const PRODUCT_SERVER_URL = "http://10.10 ...

  2. React 在服务端渲染的实现

    原文地址:Server-Side React Rendering 原文作者:Roger Jin 译者:牧云云 React 在服务端渲染的实现 React是最受欢迎的客户端 JavaScript 框架, ...

  3. 使用Spring Cloud搭建服务注册中心

    我们在之前的博客中已经介绍过阿里的分布式服务框架dubbo[Linux上安装Zookeeper以及一些注意事项][一个简单的案例带你入门Dubbo分布式框架],但是小伙伴们应该也看到了,阿里的dubb ...

  4. 教你怎么看网站是用react搭建的

    概述 SPA和react可以说是web开发的分水岭,我一直在寻找判断网站是普通网站还是SPA抑或是react的方法.今天突然找到一个判断网站是不是react搭建的简便方法.现在记录下来供以后开发时参考 ...

  5. [译]React 在服务端渲染的实现

    原文地址:Server-Side React Rendering 原文作者:Roger Jin React 在服务端渲染的实现 React是最受欢迎的客户端 JavaScript 框架,但你知道吗(可 ...

  6. Python web 框架之 Django 基础搭建服务

    1. 需要安装 Python 和 Django 环境,Python 环境的安装我就不在多说了 2. 安装框架 Django Django 安装,推荐先装个 pip吧,easyinstall也可以,然后 ...

  7. 绝版Node--Sequlize搭建服务(Node全栈之路)

    绝版Node--Sequlize搭建服务(Node全栈之路) 参考资料:https://itbilu.com/nodejs/npm/VkYIaRPz-.html 准备环境:Mysql,Node 前沿: ...

  8. CAS 5.1.x 的搭建和使用(二)—— 通过Overlay搭建服务端-其它配置说明

    CAS单点登录系列: CAS 5.1.x 的搭建和使用(一)—— 通过Overlay搭建服务端 CAS5.1.x 的搭建和使用(二)—— 通过Overlay搭建服务端-其它配置说明 CAS5.1.x ...

  9. CAS 5.1.x 的搭建和使用(一)—— 通过Overlay搭建服务端

    CAS单点登录系列: CAS 5.1.x 的搭建和使用(一)—— 通过Overlay搭建服务端 CAS5.1.x 的搭建和使用(二)—— 通过Overlay搭建服务端-其它配置说明 CAS5.1.x ...

随机推荐

  1. 出现错误lambda expressions are not supported at language level 7解决方法

    AS工程出现题目中的错误.解决办法: 这两个选中为1.8. 然后AS会自动在app的build.gradle下面,android{}里面增加 同时会修改app.iml文件中的如下部分,将Languag ...

  2. JCC指令

    0.JMP1.JE, JZ 结果为零则跳转(相等时跳转) ZF=12.JNE, JNZ 结果不为零则跳转(不相等时跳转) ZF=03.JS   结果为负则跳转   SF=14.JNS   结果为非负则 ...

  3. Git的常见操作

    1.git init:初始化     git status:查看版本状态     git log : 查看提交日志

  4. C++;STL--队列与栈;

    队列 queue模板类的定义在<queue>头文件中. queue 模板类也需要两个模板参数,一个是元素类型,一个容器类型,元素类型是必要的,容器类型是可选的,默认为deque 类型. 定 ...

  5. C++学习 之 类中的特殊函数和this指针(笔记)

    1.构造函数 构造函数是一种特殊的函数,它在对象被创建时被调用,与类同名无返回类型,可以被重载.构造函数的可以在类内实现也可以在类外实现. 构造函数的声明类似于下面的代码: class Human { ...

  6. Luogu P4878 [USACO05DEC]布局

    题目 差分约束模板. 注意判负环需要建一个超级源点到每个点连一条\(0\)的边.因为\(1\)不一定能到达所有的点. #include<bits/stdc++.h> #define pi ...

  7. FullPage.js全屏插件文档及使用方法

    简介 fullPage.js是一个基于jQuery的全屏滚动插件,它能够很方便.很轻松的制作出全屏网站 下载地址 下载地址 相关示例:基于fullpage.js实现的360全屏滑动效果 支持功能 支持 ...

  8. spring boot本地开发与docker容器化部署的差异

    spring boot本地开发与docker容器化部署的差异: 1. 文件路径及文件名区别大小写: 本地开发环境为windows操作系统,是忽略大小写的,但容器中区分大小写 2. docker中的容器 ...

  9. 如何去除List集合中的重复元素? a,b,c,a,c,b,d,,,,,,

    package com.fs.test; import java.util.ArrayList; import java.util.List; public class Listdemo { publ ...

  10. git 基本命令操作

    配置 Git 的相关参数. Git 一共有3个配置文件: 1. 仓库级的配置文件:在仓库的 .git/.gitconfig,该配置文件只对所在的仓库有效.2. 全局配置文件:Mac 系统在 ~/.gi ...