Theme Installer: Use JSONP for api.wordpress.org requests.

fixes #27639.

Built from https://develop.svn.wordpress.org/trunk@27961


git-svn-id: http://core.svn.wordpress.org/trunk@27791 1a063a9b-81f0-0310-95a4-ce76da25c4cd
This commit is contained in:
Andrew Nacin 2014-04-05 20:28:14 +00:00
parent 3238664215
commit 9fc1d41ec1
2 changed files with 11 additions and 20 deletions

View File

@ -317,34 +317,25 @@ themes.Collection = Backbone.Collection.extend({
request: {}
},
// Send Ajax POST request to api.wordpress.org/themes
// Send request to api.wordpress.org/themes
apiCall: function( request, paginated ) {
// Ajax request to .org API
return $.ajax({
url: 'https://api.wordpress.org/themes/info/1.1/?action=query_themes',
// Send tags (and fields) as comma-separated to keep the JSONP query string short.
if ( request.tag && _.isArray( request.tag ) ) {
request.tag = request.tag.join( ',' );
}
// We want JSON data
dataType: 'json',
type: 'POST',
crossDomain: true,
// JSONP request to .org API
return $.ajax({
url: 'https://api.wordpress.org/themes/info/1.1/?callback=?',
dataType: 'jsonp',
// Request data
data: {
action: 'query_themes',
request: _.extend({
per_page: 72,
fields: {
description: true,
tested: true,
requires: true,
rating: true,
downloaded: true,
downloadLink: true,
last_updated: true,
homepage: true,
num_ratings: true
}
fields: 'description,tested,requires,rating,downloaded,downloadLink,last_updated,homepage,num_ratings'
}, request)
},

File diff suppressed because one or more lines are too long