![](/img/trans.png)
[英]Access to fetch at 'https://randomuser.me/api/?results=4' from origin 'http://localhost:3000' has been blocked by CORS policy:
[英]Output capitalized names from randomUser.me api?
如果这不是问这个问题的合适平台,请原谅我。 而且,我要说一下我是一位很少有API和javascript经验的设计师。
我正在使用randomUser api生成可以在Invision的Craft工具中输入的json文件或url,以便在我的设计中输入真实数据。 https://screencast.com/t/jAkwUpUja2 。 但是,它以小写形式而不是标题大写/大写。
我通过在浏览器中键入所需的端点来生成JSON: https : //screencast.com/t/E8Cmjk5XSSCk
因此,有没有办法强制api给我大写的名字? 谢谢!
编辑:这是JSON网址: https : //randomuser.me/api/? results = 20& nat = us&inc = name,gender,picture&format = pretty
据我所知,这是用JS大写字符串的最简单方法:
// let's assume, that you have stored the lastname as follow:
let last = 'rodney';
要转换姓氏,请应用以下模式:
let capitalizedLast = last[0].toUpperCase() + last.substr(1);
last[0]
返回字符串r
的第一个字母。
last.substr(1)
给出其余的odney
使用toUpperCase()
您可以转换第一个字母,而+
则将两者都连接为最终结果。
您只需要对API的结果进行说明,然后以这种方式转换所需的元素。
快速浏览文档表明,可能没有办法使API直接返回大写的名称。 因此,您将必须编写一些JavaScript才能为您完成这项工作。
此代码应将所有名称大写的数据打印到控制台。
它遍历结果数组中的项目,遍历该项目的name
属性的所有属性并将其大写。
capitalize
函数获取名称的第一个字符,将其转换为大写字母,并将其附加到名称的其余部分。
function capitalize(text) { return (!text || !text.length) ? text : (text[0].toUpperCase() + text.slice(1)); } $.get("https://randomuser.me/api/?results=20&nat=us&inc=name,gender,picture&format=pretty", function(data) { if (!data || !data.results) return; data.results.forEach(function(user) { if (user.name) { for (var name in user.name) { user.name[name] = capitalize(user.name[name]); } } }); console.log(data); });
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.