Make WordPress Core

Ticket #43265: 43265.patch

File 43265.patch, 1.4 KB (added by ocean90, 7 years ago)
  • src/wp-includes/js/wp-api.js

     
    993993                                options    = options || {};
    994994                                beforeSend = options.beforeSend;
    995995
    996                                 // If we have a localized nonce, pass that along with each sync.
    997                                 if ( 'undefined' !== typeof wpApiSettings.nonce ) {
     996                                if ( _.isFunction( model.nonce ) && ! _.isUndefined( model.nonce() ) && ! _.isNull( model.nonce() ) ) {
    998997                                        options.beforeSend = function( xhr ) {
    999                                                 xhr.setRequestHeader( 'X-WP-Nonce', wpApiSettings.nonce );
     998                                                xhr.setRequestHeader( 'X-WP-Nonce', model.nonce() );
    1000999
    10011000                                                if ( beforeSend ) {
    10021001                                                        return beforeSend.apply( self, arguments );
     
    14051404                                                        return new loadingObjects.models[ modelClassName ]( attrs, options );
    14061405                                                },
    14071406
     1407                                                // Track nonces at the Endpoint level.
     1408                                                nonce: function() {
     1409                                                        return routeModel.get( 'nonce' );
     1410                                                },
     1411
    14081412                                                // Include a reference to the original class name.
    14091413                                                name: collectionClassName,
    14101414
     
    14321436                                                        return new loadingObjects.models[ modelClassName ]( attrs, options );
    14331437                                                },
    14341438
     1439                                                // Track nonces at the Endpoint level.
     1440                                                nonce: function() {
     1441                                                        return routeModel.get( 'nonce' );
     1442                                                },
     1443
    14351444                                                // Include a reference to the original class name.
    14361445                                                name: collectionClassName,
    14371446