我正在使用AngularJS和WordPress Rest API。我正在发出一个返回对象的get请求。要获得特色图像,我必须使用'?embed'参数,该参数是另一个名为_embedded的对象。
问题是_embedded里面我想要的对象叫做wp:featuredmedia。如果我在角度中像这样引用它,我会收到语法错误。
这是我的代码
$http.get(queries[0], {'cache': true}).
then(function(response) {
$scope.careers_title = strip(response.data.title.rendered);
$scope.careers_content = strip(response.data.content.rendered);
$scope.careers_feature_image = strip(response.data.featured_media);
console.log(response.data._embedded);
});
console.log返回此
Object {author: Array[1], wp:featuredmedia: Array[1], wp:term: Array[2]}author: Array[1]wp:featuredmedia: Array[1]0: Object_links: Objectalt_text: ""author: 1date: "2016-04-25T09:33:52"id: 46link: "http://localhost:8888/rubis/wordpress/energy-efficiency/tp-roundall/"media_details: Objectmedia_type: "image"mime_type: "image/png"slug: "tp-roundall"source_url: "http://localhost:8888/rubis/wordpress/wp-content/uploads/2016/04/tp-roundall.png"title: Objecttype: "attachment"__proto__: Objectlength: 1__proto__: Array[0]wp:term: Array[2]__proto__: Object
答案 0 :(得分:7)
确实你不能写:
response.data._embedded.wp:featuredmedia
这是一个禁止的财产名称。但是,任何字符串都被接受,因此您可以通过以下方式访问它:
response.data._embedded['wp:featuredmedia']
答案 1 :(得分:0)
你好,除了上一个例子,如果你
使用google inspect你可以查看json响应并复制jsonson路径
data._embedded ["可湿性粉剂:featuredmedia&#34]。[" 0"] media_details.sizes.medium
[enter image description here][1]