Make WordPress Core

Changeset 46253


Ignore:
Timestamp:
09/23/2019 05:46:33 PM (5 years ago)
Author:
iseulde
Message:

Editor: Add Nonce Endpoint

This is a follow up to #47843, implementing a PHP endpoint and inline scripts
after the editor package updates. The action was originally added in
https://github.com/WordPress/gutenberg/pull/16683.

Fixes #48076.

Location:
trunk
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • trunk/package-lock.json

    r46189 r46253  
    35033503                "file-type": {
    35043504                    "version": "3.9.0",
    3505                     "resolved": "https://registry.npmjs.org/file-type/-/file-type-3.9.0.tgz",
     3505                    "resolved": "http://registry.npmjs.org/file-type/-/file-type-3.9.0.tgz",
    35063506                    "integrity": "sha1-JXoHg4TR24CHvESdEH1SpSZyuek=",
    35073507                    "dev": true,
     
    46664666                "uuid": {
    46674667                    "version": "2.0.3",
    4668                     "resolved": "https://registry.npmjs.org/uuid/-/uuid-2.0.3.tgz",
     4668                    "resolved": "http://registry.npmjs.org/uuid/-/uuid-2.0.3.tgz",
    46694669                    "integrity": "sha1-Z+LoY3lyFVMN/zGOW/nc6/1Hsho=",
    46704670                    "dev": true,
     
    47554755        "bl": {
    47564756            "version": "1.2.2",
    4757             "resolved": "https://registry.npmjs.org/bl/-/bl-1.2.2.tgz",
     4757            "resolved": "http://registry.npmjs.org/bl/-/bl-1.2.2.tgz",
    47584758            "integrity": "sha512-e8tQYnZodmebYDWGH7KMRvtzKXaJHx3BbilrgZCfvyLUYdKpK1t5PSPmpkny/SgiTSCnjfLW7v5rlONXVFkQEA==",
    47594759            "dev": true,
     
    49414941        "browserify-aes": {
    49424942            "version": "1.2.0",
    4943             "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz",
     4943            "resolved": "http://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz",
    49444944            "integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==",
    49454945            "dev": true,
     
    50935093                "file-type": {
    50945094                    "version": "3.9.0",
    5095                     "resolved": "https://registry.npmjs.org/file-type/-/file-type-3.9.0.tgz",
     5095                    "resolved": "http://registry.npmjs.org/file-type/-/file-type-3.9.0.tgz",
    50965096                    "integrity": "sha1-JXoHg4TR24CHvESdEH1SpSZyuek=",
    50975097                    "dev": true,
     
    51005100                "uuid": {
    51015101                    "version": "2.0.3",
    5102                     "resolved": "https://registry.npmjs.org/uuid/-/uuid-2.0.3.tgz",
     5102                    "resolved": "http://registry.npmjs.org/uuid/-/uuid-2.0.3.tgz",
    51035103                    "integrity": "sha1-Z+LoY3lyFVMN/zGOW/nc6/1Hsho=",
    51045104                    "dev": true,
     
    60086008                "cacache": {
    60096009                    "version": "10.0.4",
    6010                     "resolved": "https://registry.npmjs.org/cacache/-/cacache-10.0.4.tgz",
     6010                    "resolved": "http://registry.npmjs.org/cacache/-/cacache-10.0.4.tgz",
    60116011                    "integrity": "sha512-Dph0MzuH+rTQzGPNT9fAnrPmMmjKfST6trxJeK7NQuHRaVw24VzPRWTmg9MpcwOVQZO0E1FBICUlFeNaKPIfHA==",
    60126012                    "dev": true,
     
    74727472        "duplexer": {
    74737473            "version": "0.1.1",
    7474             "resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.1.tgz",
     7474            "resolved": "http://registry.npmjs.org/duplexer/-/duplexer-0.1.1.tgz",
    74757475            "integrity": "sha1-rOb/gIwc5mtX0ev5eXessCM0z8E=",
    74767476            "dev": true
     
    1075610756                "async": {
    1075710757                    "version": "0.2.10",
    10758                     "resolved": "https://registry.npmjs.org/async/-/async-0.2.10.tgz",
     10758                    "resolved": "http://registry.npmjs.org/async/-/async-0.2.10.tgz",
    1075910759                    "integrity": "sha1-trvgsGdLnXGXCMo43owjfLUmw9E=",
    1076010760                    "dev": true
     
    1091610916                "uglify-js": {
    1091710917                    "version": "2.7.5",
    10918                     "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-2.7.5.tgz",
     10918                    "resolved": "http://registry.npmjs.org/uglify-js/-/uglify-js-2.7.5.tgz",
    1091910919                    "integrity": "sha1-RhLAx7qu4rp8SH3kkErhIgefLKg=",
    1092010920                    "dev": true,
     
    1092810928                "yargs": {
    1092910929                    "version": "3.10.0",
    10930                     "resolved": "https://registry.npmjs.org/yargs/-/yargs-3.10.0.tgz",
     10930                    "resolved": "http://registry.npmjs.org/yargs/-/yargs-3.10.0.tgz",
    1093110931                    "integrity": "sha1-9+572FfdfB0tOMDnTvvWgdFDH9E=",
    1093210932                    "dev": true,
     
    1688516885                "progress": {
    1688616886                    "version": "1.1.8",
    16887                     "resolved": "https://registry.npmjs.org/progress/-/progress-1.1.8.tgz",
     16887                    "resolved": "http://registry.npmjs.org/progress/-/progress-1.1.8.tgz",
    1688816888                    "integrity": "sha1-4mDHj2Fhzdmw5WzD4Khd4Xx6V74=",
    1688916889                    "dev": true
  • trunk/src/wp-admin/admin-ajax.php

    r45934 r46253  
    5454    'dashboard-widgets',
    5555    'logged-in',
     56    'rest-nonce',
    5657);
    5758
  • trunk/src/wp-admin/includes/ajax-actions.php

    r46174 r46253  
    52695269    wp_send_json_success( $all_sizes );
    52705270}
     5271
     5272/**
     5273 * Ajax handler to renew the REST API nonce.
     5274 *
     5275 * @since 5.3.0
     5276 */
     5277function wp_ajax_rest_nonce() {
     5278    exit( wp_create_nonce( 'wp_rest' ) );
     5279}
  • trunk/src/wp-includes/script-loader.php

    r46239 r46253  
    652652    $scripts->add_inline_script(
    653653        'wp-api-fetch',
    654         sprintf(
    655             implode(
    656                 "\n",
    657                 array(
    658                     '( function() {',
    659                     '   var nonceMiddleware = wp.apiFetch.createNonceMiddleware( "%s" );',
    660                     '   wp.apiFetch.use( nonceMiddleware );',
    661                     '   wp.hooks.addAction(',
    662                     '       "heartbeat.tick",',
    663                     '       "core/api-fetch/create-nonce-middleware",',
    664                     '       function( response ) {',
    665                     '           if ( response[ "rest_nonce" ] ) {',
    666                     '               nonceMiddleware.nonce = response[ "rest_nonce" ];',
    667                     '           }',
    668                     '       }',
    669                     '   );',
    670                     '} )();',
    671                 )
     654        join(
     655            array(
     656                sprintf(
     657                    'wp.apiFetch.nonceMiddleware = wp.apiFetch.createNonceMiddleware( "%s" );',
     658                    ( wp_installing() && ! is_multisite() ) ? '' : wp_create_nonce( 'wp_rest' )
     659                ),
     660                'wp.apiFetch.use( wp.apiFetch.nonceMiddleware );',
     661                sprintf(
     662                    'wp.apiFetch.nonceEndpoint = "%s";',
     663                    admin_url( 'admin-ajax.php?action=rest-nonce' )
     664                ),
    672665            ),
    673             ( wp_installing() && ! is_multisite() ) ? '' : wp_create_nonce( 'wp_rest' )
     666            "\n"
    674667        ),
    675668        'after'
Note: See TracChangeset for help on using the changeset viewer.