Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >GitHub API JSON包含新行(\n)

GitHub API JSON包含新行(\n)
EN

Stack Overflow用户
提问于 2017-11-17 15:51:20
回答 1查看 517关注 0票数 2

我使用JSON访问某个文件的内容,并在GitHub密钥content的值内获取\n。为什么那些\n会在那里?

content是b64编码的,但很明显,对于那些\n,解码失败。我可以编写一些代码来删除\n,但是它们存在的原因是什么呢?

示例:https://api.github.com/repos/grantae/mips32r1_xum/contents/README

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
{
  "name": "README",
  "path": "README",
  "sha": "2d77ad7f50cc6843ea06b0b48d6935c57b7b5577",
  "size": 3997,
  "url": "https://api.github.com/repos/grantae/mips32r1_xum/contents/README?ref=master",
  "html_url": "https://github.com/grantae/mips32r1_xum/blob/master/README",
  "git_url": "https://api.github.com/repos/grantae/mips32r1_xum/git/blobs/2d77ad7f50cc6843ea06b0b48d6935c57b7b5577",
  "download_url": "https://raw.githubusercontent.com/grantae/mips32r1_xum/master/README",
  "type": "file",
/*
* 提示:该行代码过长,系统自动注释不进行高亮。一键复制会移除系统注释 
* "content": "TUlQUzMyUjEgLSAxIEphbiAyMDE0DQotLS0tLS0tLS0tLS0tLS0tLS0tLS0N\nCg0KVGhpcyBpcyBhbiBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgTUlQUzMyIFJl\nbGVhc2UgMSBwcm9jZXNzb3IuDQoNClRoaXMgZGVzaWduIHdhcyBjcmVhdGVk\nIGJ5IEdyYW50IEF5ZXJzIGFuZCBmdW5kZWQgYnkgdGhlIA0KZVh0ZW5zaWJs\nZSBVdGFoIE11bHRpY29yZSAoWFVNKSBwcm9qZWN0IGF0IHRoZSBVbml2ZXJz\naXR5IG9mIFV0YWgNCmZyb20gMjAxMC0yMDEyLiBJdCB3YXMgcHJldmlvdXNs\neSBob3N0ZWQgb24gT3BlbkNvcmVzIGFzICdtaXBzMzJyMScuDQpGZWVsIGZy\nZWUgdG8gc2VuZCBxdWVzdGlvbnMgb3IgZmVlZGJhY2sgdG8gYXllcnMgQVQg\nY3Muc3RhbmZvcmQuZWR1Lg0KDQoNClByb2Nlc3NvciBEZXRhaWxzDQotLS0t\nLS0tLS0tLS0tLS0tLQ0KDQotIFNpbmdsZS1pc3N1ZSBpbi1vcmRlciA1LXN0\nYWdlIHBpcGVsaW5lIHdpdGggZnVsbCBmb3J3YXJkaW5nIGFuZCBoYXphcmQg\nZGV0ZWN0aW9uLg0KLSBIYXJ2YXJkIGFyY2hpdGVjdHVyZSB3aXRoIHNlcGFy\nYXRlIGluc3RydWN0aW9uIGFuZCBkYXRhIHBvcnRzIHdoaWNoIGNhbiBiZSAN\nCiAgY29tYmluZWQgaWYgZGVzaXJlZC4NCi0gQWxsIHJlcXVpcmVkIE1JUFMz\nMiBpbnN0cnVjdGlvbnMgYXJlIGltcGxlbWVudGVkLCBpbmNsdWRpbmcgaGFy\nZHdhcmUgbXVsdGlwbGljYXRpb24NCiAgYW5kIGRpdmlzaW9uLCBmdXNlZCBt\ndWx0aXBseS9hZGRzLCBhdG9taWMgbG9hZCBsaW5rZWQgLyBzdG9yZSBjb25k\naXRpb25hbCwgYW5kDQogIHVuYWxpZ25lZCBsb2FkcyBhbmQgc3RvcmVzLg0K\nLSBDb21wbGV0ZSBDb3Byb2Nlc3NvciAwIGFsbG93cyBJU0EtY29tcGxpYW50\nIGludGVycnVwdHMsIGV4Y2VwdGlvbnMsIGFuZCB1c2VyL2tlcm5lbCBtb2Rl\ncy4NCi0gTm8gTU1VLiBUaGlzIGlzIGEgYmFyZS1tZXRhbCBwcm9jZXNzb3Iu\nDQotIE5vIEZQVSwgd2l0aCB0b29sY2hhaW4gc3VwcG9ydCBmb3Igc29mdHdh\ncmUtYmFzZWQgZmxvYXRpbmcgcG9pbnQuDQotIEhhcmR3YXJlIGRpdmlkZXIg\naXMgc21hbGwsIG11bHRpY3ljbGUsIGFuZCBydW5zIGFzeW5jaHJvbm91c2x5\nIGZyb20gdGhlIHBpcGVsaW5lDQogIGFsbG93aW5nIHNvbWUgbWFza2luZyBv\nZiBsYXRlbmN5Lg0KLSBNZW1vcnkgaW50ZXJmYWNlIGlzIHNlcGFyYXRlIGZy\nb20gdGhlIHByb2Nlc3NvciBmb3IgZmxleGliaWxpdHkgd2l0aCBjb25uZWN0\naW5nDQogIHZhcmlvdXMgUkFNcy4gSXQgdXRpbGl6ZXMgYSBmb3VyLXdheSBo\nYW5kc2hha2UuDQotIEhhcmR3YXJlIGlzIEJpZy1FbmRpYW4gYnkgZGVmYXVs\ndCBhbmQgc3VwcG9ydHMgcmV2ZXJzZS1lbmRpYW4gbW9kZSBpbiBVc2VyIG1v\nZGUuDQotIFBhcmFtZXRlcml6ZWQgYWRkcmVzc2VzIGZvciBleGNlcHRpb24v\naW50ZXJydXB0IHZlY3RvcnMgYW5kIGJvdW5kYXJ5IGFkZHJlc3MNCiAgYmV0\nd2VlbiB1c2VyL2tlcm5lbCByZWdpb25zLg0KLSBFeHRlbnNpdmUgZG9jdW1l\nbnRhdGlvbiBpbi1zb3VyY2UgYW5kIGVsc2V3aGVyZS4NCi0gVmVuZG9yLWlu\nZGVwZW5kZW50IGNvZGUuDQotIEEgY2xlYW4sIG1vZHVsYXIgZGVzaWduIHdy\naXR0ZW4gZnJvbSBzY3JhdGNoLg0KDQpUaGUgcHJvamVjdCBpbmNsdWRlcyBh\nIHN0YW5kYWxvbmUgTUlQUzMyIHByb2Nlc3NvciBhcyB3ZWxsIGFzIGEgZnVs\nbCBTeXN0ZW0tb24tQ2hpcA0KZGVzaWduIHRhcmdldGVkIGZvciB0aGUgWGls\naW54IFhVUFY1LUxYMTEwVCBib2FyZC4gV2l0aCBtaW5vciBjaGFuZ2VzIChj\nbG9jayBtb2R1bGUsDQpCUkFNIG1vZHVsZSwgYW5kIHBpbiBjb25zdHJhaW50\ncykgdGhlIFNvQyBjYW4gcnVuIG9uIG1hbnkgaGFyZHdhcmUgcGxhdGZvcm1z\nLg0KDQoNCk90aGVyIEhhcmR3YXJlDQotLS0tLS0tLS0tLS0tLQ0KDQpUaGUg\nZm9sbG93aW5nIE1NSU8gaGFyZHdhcmUgZHJpdmVycyBhcmUgaW5jbHVkZWQg\nYXMgcGFydCBvZiB0aGUgU29DIGRlc2lnbjoNCg0KLSBCYXNpYyBzaW5nbGUt\nbWFzdGVyIEkyQyBkcml2ZXIuDQotIDE2eDIgTENEIGRyaXZlciBmb3IgU2l0\ncm9uaXggU1Q3MDY2VSwgU2Ftc3VuZyBTNkEwMDY5WCAvIEtTMDA2NlUsIEhp\ndGFjaGkgSEQ0NDc4MCwNCiAgU01PUyBTRUQxMjc4LCBvciBvdGhlciBjb21w\nYXRpYmxlIGhhcmR3YXJlLg0KLSBMRUQgZHJpdmVyLg0KLSBQaWV6byB0cmFu\nc2R1Y2VyIGRyaXZlci4NCi0gU3dpdGNoIGlucHV0IGZpbHRlci4NCi0gMTE1\nMjAwIGJhdWQgOC1OLTEgc2VyaWFsIHBvcnQgdXNpbmcgb25seSBUeCBhbmQg\nUnggd2l0aCBjb25maWd1cmFibGUgYmF1ZCByYXRlLg0KLSA1OTIgS0IgQlJB\nTSBhbmQgY2xvY2sgZ2VuZXJhdGlvbiBmb3IgWFVQVjUgYm9hcmQuDQoNCg0K\nU29mdHdhcmUgRGV0YWlscw0KLS0tLS0tLS0tLS0tLS0tLQ0KDQotIFRoZSBz\nb2Z0d2FyZSB0b29sY2hhaW4gaXMgYmFzZWQgb24gQmludXRpbHMsIEdDQywg\nYW5kIE5ld2xpYi4gSXQgY2FuIGJlIGJ1aWx0IGZvciBhbG1vc3QNCiAgYW55\nIHBsYXRmb3JtLCBpbmNsdWRpbmcgdW5peC1saWtlIGVudmlyb25tZW50cyBh\nbmQgV2luZG93cyAoQ3lnd2luKS4gSW5zdHJ1Y3Rpb25zIGFuZA0KICB0b29s\nY2hhaW4gc291cmNlIGNvZGUgaXMgaW5jbHVkZWQgaW4gdGhlIHByb2plY3Qu\nIFRoZSBjdXJyZW50IHRvb2xjaGFpbiB1c2VzDQogIEJpbnV0aWxzIDIuMjEs\nIEdDQyA0LjcuMSAobXBmciAzLjAuMSwgbXBjIDAuOSwgZ21wIDUuMC41KSwg\nYW5kIE5ld2xpYiAxLjIwLjAuDQogIFRoZSB0b29sY2hhaW4gc3VwcG9ydHMg\nQmlnLSBhbmQgTGl0dGxlLUVuZGlhbiBjb2RlIGFzIHdlbGwgYXMgc29mdHdh\ncmUgZmxvYXRpbmcgcG9pbnQuDQogIE5ld2xpYiBDIGxpYnJhcnkgc3R1YnMg\nKHByaW50ZiwgZXRjLikgYXJlIGxlZnQgdW5jaGFuZ2VkLg0KLSBTZXZlcmFs\nIGRlbW9zIGFyZSB3cml0dGVuIGluIEMgYW5kIGFzc2VtYmx5Lg0KLSBUaGUg\nWFVNIGJvb3Rsb2FkZXIgaXMgaW5jbHVkZWQsIHdoaWNoIGxvYWRzIHByb2dy\nYW1zIGZyb20gYSBQQyB0byB0aGUgRlBHQS4gVGhpcyBpcw0KICB3cml0dGVu\nIGluIEMjIGZvciBXaW5kb3dzLCBob3dldmVyIHRoZSBib290IHByb3RvY29s\nIGlzIHNpbXBsZSBhbmQgY2FuIGJlIGltcGxlbWVudGVkDQogIGluIGFueSBv\ncGVyYXRpbmcgc3lzdGVtIG9yIG5vdCB1c2VkIGF0IGFsbC4NCg0KDQpEaXJl\nY3RvcnkgTGF5b3V0DQotLS0tLS0tLS0tLS0tLS0tDQoNCiAgIEhhcmR3YXJl\nOg0KICAgICAgLT4gTUlQUzMyX1N0YW5kYWxvbmU6IFByb2Nlc3NvciBIREwg\nb25seS4gVG9wIGZpbGUgaXMgIlByb2Nlc3Nvci52Ii4NCiAgICAgIA0KICAg\nICAgLT4gWFVQVjUtTFgxMTBUX1NvQzogIEZ1bGwgU3lzdGVtLW9uLUNoaXAg\nZm9yIFhVUFY1IGJvYXJkIGFuZCBYaWxpbnggSVNFIDE0LjENCiAgICAgICAg\nICAgICAgICAgICAgICAgICAgICBQcm9qZWN0IE5hdmlnYXRvci4gVXNlZnVs\nIGFzIGEgc3RhcnRpbmcgcG9pbnQgZm9yIG90aGVyDQogICAgICAgICAgICAg\nICAgICAgICAgICAgICAgYm9hcmRzIGFzIHdlbGwuIFNlZSAiSE9XVE8iIGlu\nIHRoaXMgZGlyZWN0b3J5IGZvciBtb3JlDQogICAgICAgICAgICAgICAgICAg\nICAgICAgICAgaW5mb3JtYXRpb24uDQogICANCiAgIFNvZnR3YXJlOg0KICAg\nICAgLT4gZGVtb3M6ICAgICAgICAgICAgIFNvZnR3YXJlIGRlbW9zIGZvciBY\nVU0NCiAgICAgIC0+IHRvb2xjaGFpbjogICAgICAgICBJbnN0cnVjdGlvbnMg\nZm9yIGNyZWF0aW5nIGEgTUlQUyBjcm9zc2NvbXBpbGVyIHRvb2xjaGFpbg0K\nICAgICAgLT4geHVtX2Jvb3Rsb2FkZXI6ICAgIEEgQyMgaW1wbGVtZW50YXRp\nb24gb2YgdGhlIFhVTSBib290bG9hZGVyLg0KDQoNCkxlZ2FsDQotLS0tLQ0K\nDQpBbGwgc29mdHdhcmUgYW5kIGhhcmR3YXJlIGluY2x1ZGVkIGluIHRoaXMg\nZGlzdHJpYnV0aW9uIGlzIGxpY2Vuc2VkIHVuZGVyDQp0aGUgR05VIExHUEwu\nIFNlZSB0aGUgZmlsZSAnTEVHQUwnIGluIHRoaXMgc2FtZSBkaXJlY3Rvcnkg\nZm9yIG1vcmUgaW5mb3JtYXRpb24uDQoNCg0KRW5qb3khDQoNCg==\n",
*/
  "encoding": "base64",
  "_links": {
    "self": "https://api.github.com/repos/grantae/mips32r1_xum/contents/README?ref=master",
    "git": "https://api.github.com/repos/grantae/mips32r1_xum/git/blobs/2d77ad7f50cc6843ea06b0b48d6935c57b7b5577",
    "html": "https://github.com/grantae/mips32r1_xum/blob/master/README"
  }
}
EN

回答 1

Stack Overflow用户

发布于 2018-06-02 19:31:24

您可以尝试使用不同的base64解码库来处理这些\n

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
var base64 = require('js-base64').Base64;
var contents = base64.decode(res.content);

它的工作原理与GitHub接口调用头相同:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
'accept': 'application/vnd.github.VERSION.raw'
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47354469

复制
相关文章
AngularJS 控制器
控制器是 JavaScript 对象,由标准的 JavaScript 对象的构造函数 创建。
陈不成i
2021/07/23
1.2K0
使用 RequireJS 加载 AngularJS
AngularJS 目前的版本没有遵循 Javascript 约定的 AMD 模块化规范, 因此使用 RequireJS 加载 AngularJS 时需要一些额外的配置。
beginor
2020/08/10
1.3K0
使用 RequireJS 加载 AngularJS
解决angularjs图片加载失败
angularjs图片加载失败,本文的angularjs图片加载失败中的angularjs指的是angular2、angular4。
全栈程序员站长
2022/09/02
1.5K0
angularJS学习之路(三)---控制器
控制器是 JavaScript 对象,由标准的 JavaScript 对象的构造函数 创建。
wust小吴
2019/07/08
6290
angularjs 控制器、作用域、广播详解
一、控制器 首先列出几种我们平常使用控制器时的几种误区: 我们知道angualrJs中一个控制器时可以对应不同的视图模板的,但这种实现方式存在的问题是: 如果视图1和视图2根本没有任何逻辑关系,这样“
柴小智
2018/04/10
1.9K0
angularjs 控制器、作用域、广播详解
[angularjs] angularjs系列笔记(四)控制器
所有的应用都有一个$rootScope,它可以作用在ng-app指令包含的所有的html元素中
唯一Chat
2019/09/10
4060
Angularjs动态加载ECharts(二)
今早操作的时候又有了问题,我需要做的是select下拉框选择时间,然后将对应时间的数据显示到ECharts上 如图所示
治电小白菜
2020/08/25
7380
Angularjs动态加载ECharts(二)
Angularjs动态加载ECharts(一)
今早发现,directive写的echarts组件,虽然能够获取到Controller中的数据,但是当我使用$http请求到的数据,想传到directive却总是获取不到,知道这是异步问题,图表加载后,数据才请求到,所以图表加载不了数据 解决方法 使用ng-if,判断,如果有数据才显示,完美解决 <realtem-data ng-if="data" id="temdata" legend="legend" item="item" data="data"></realtem-data> 其余代码 con
治电小白菜
2020/08/25
9460
Angularjs动态加载ECharts(一)
按需加载 AngularJS 的 Controller
AngularJS 通过路由支持多视图应用, 可以根据路由动态加载所需的视图, 在 AngularJS 的文档中有详细的介绍, 网上也有不少教程, 就不用介绍了!
beginor
2020/08/10
1.2K0
Spark UDF加载外部资源
由于Spark UDF的输入参数必须是数据列column,在UDF中进行如Redis查询、白/黑名单过滤前,需要加载外部资源(如配置参数、白名单)初始化它们的实例。若它们都能被序列化,从Driver端初始化+broadcast的方式可以完成构建。而Redis、字典树等存在不能序列化的对象,也就无法从Driver端发送到Excutor端。因此,整体的思路是:在Driver端初始化可以被序列化的资源,在Excutor端利用资源构建不可序列化对象,从而分布完成整个对象的构建。
mikeLiu
2020/08/28
5.4K0
as3加载外部资源
在as3的开发中,经常会加载外部共用资源,比如某一个公用的图片或者其它小特效。这时候为了避免重复请求,一般会将这些资源放在一个fla文件中,为每一个资源添加链接。这里以一张图片为例(flower.fla):
meteoric
2018/11/16
8770
AngularJS中的按需加载ocLazyLoad
初学者,有不足的地方希望各位指出 一、前言     ocLoayLoad是AngularJS的模块按需加载器。一般在小型项目里,首次加载页面就下载好所有的资源没有什么大问题。但是当我们的网站渐渐庞大起来,这样子的加载策略让网速初始化速度变得越来越慢,用户体验不好。二来,分模块加载易于团队协作,减低代码冲突。   二、按需加载的对象 各个Controller模块、Directive模块、Server模块、template模板,其实这些都是一些 .js文件或者 .html文件 。     三 、按需加载的场
庞小明
2018/03/07
1.7K0
AngularJS系列(二)——作用域和控制器
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
逝兮诚
2019/10/30
4440
[CodeIgniter4]讲解-加载静态页
本教程旨在向您介绍CodeIgniter框架和MVC体系结构的基本原理。它将向您展示如何以逐步的方式构造基本的CodeIgniter应用程序。
landv
2020/03/04
3.6K0
AngularJS浅谈-博客
AngularJS是啥?(一脸懵逼) 简介: AngularJS诞生于2009年,由Misko Hevery 等人创建,后为Google所收购。是一款优秀的前端JS框架,已经被用于Google的多款
双愚
2018/05/28
2.4K0
网站404页面的设计
每一个网站都必须有404页面,404页面指的是显示网站错误链接的页面,可能是该访问的页面不存在,也可能是页面已经被删除。
岳泽以
2022/10/26
1.4K0
网站404页面的设计
Spark GenericUDF动态加载外部资源
文章1中提到的动态加载外部资源,其实需要重启Spark任务才会生效。受到文章2启动,可以在数据中加入常量列,表示外部资源的地址,并作为UDF的参数(UDF不能输入非数据列,因此用此方法迂回解决问题),再结合文章1的方法,实现同一UDF,动态加载不同资源。本文通过继承GenericUDF类,读取存放在Redis集群中的字符串,构建字典树,完成词包匹配,来说明这一工作。
mikeLiu
2020/09/01
2.7K0
AngularJS 应用
<html> 元素是 AngularJS 应用: ng-app="myNoteApp" 的容器:
陈不成i
2021/07/26
1.2K0
如何在 ASP.NET MVC 中集成 AngularJS(1)
介绍 当涉及到计算机软件的开发时,我想运用所有的最新技术。例如,前端使用最新的 JavaScript 技术,服务器端使用最新的基于 REST 的 Web API 服务。另外,还有最新的数据库技术、最新的设计模式和技术。 当选择最新的软件技术时,有几个因素在起作用,其中包括如何将这些技术整合起来。过去两年中,我最喜欢的一项技术就是设计单页面应用(SPA)的 AngularJS。作为一个微软stack开发者,我也是使用 ASP.NET MVC 平台实现 MVC 设计模式和并进行研究的粉丝,包括它的捆绑和压缩功能
葡萄城控件
2018/01/10
7.6K0
如何在 ASP.NET MVC 中集成 AngularJS(1)
深入了解 AngularJS 路由的原理和使用技巧
在现代Web应用程序中,页面之间的导航是非常重要的。为了实现有效的导航和良好的用户体验,AngularJS 提供了一种强大的路由机制。通过使用 AngularJS 的路由功能,我们可以轻松地管理应用程序的不同视图,并根据URL的变化加载不同的组件。
网络技术联盟站
2023/07/04
2240

相似问题

使用angularjs在分隔页中加载外部库

12

AngularJS & Bootstrap模式加载模板外部控制器

11

在angularjs中重新加载外部控制器

11

AngularJS控制器工作,但不加载html页。

25

angularjs控制器模块参考加载空白页

11
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文