Rumah  >  Soal Jawab  >  teks badan

Bolehkah nginx mengubah suai kandungan replysonse?

nginx menyokong fungsi sedemikian, iaitu, bolehkah kandungan balasan diubah suai?

Sebagai contoh, kandungan yang dikembalikan oleh antara muka pada mulanya adalah seperti ini

   "data" : {
      "totalAmount" : 49,  // 用户累积所中金额
      "remainingCount" : 3 // 当天剩余抽奖次数
   }

Atribut baharu telah ditambahkan kemudian--总抽奖次数,于是想将之前的remainingCount改成更贴切的todayRemainingCount

      "todayRemainingCount" : 3 // 当天剩余抽奖次数
      "totalRemainingCount" : 10 // 总剩余抽奖次数

Namun, semasa proses dalam talian, pelayan datang dalam talian dahulu, dan kemudian H5 datang dalam talian Oleh itu, dalam tempoh ini, H5 tidak akan dapat menghuraikan remainingCount, menjejaskan logik perniagaan dalam talian biasa.

Jadi saya ingin melakukan beberapa pemprosesan sementara melalui nginx dalam tempoh ini supaya ia boleh ditingkatkan dengan lancar Contohnya, antara muka pelayan parsing secara automatik mencipta atribut nginx来做一下临时处理使得可以平滑升级, 如解析服务端接口基于todayRemainingCount自动创建一个remainingCount berdasarkan todayRemainingCount supaya ia boleh serasi dengan antara muka lama seperti berikut Ditunjukkan

      "todayRemainingCount" : 3 // 当天剩余抽奖次数
      "remainingCount" : 3 // 当天剩余抽奖次数 兼容旧接口
      "totalRemainingCount" : 10 // 总剩余抽奖次数

Sekatan sementara ini akan ditarik balik selepas H5 dilancarkan.

大家讲道理大家讲道理2734 hari yang lalu549

membalas semua(4)saya akan balas

  • 怪我咯

    怪我咯2017-05-16 17:16:10

    Baiklah, sila lihat https://openresty.org/en/
    Untuk keperluan anda, lebih baik menggunakan program untuk menilai dan mengendalikannya, atau menambah suis tambahan atau sesuatu.
    Nginx dalam talian tidak akan menukar konfigurasi secara sembarangan.

    balas
    0
  • PHP中文网

    PHP中文网2017-05-16 17:16:10

    Bergantung pada keperluan anda, antara muka boleh terus mengeluarkan kedua-dua remainingCount dan todayRemainingCount pada masa yang sama Tidak kira antara muka yang anda gunakan untuk memanggil antara muka, anda boleh mendapatkan nilai Selepas anda menggunakan semuanya, cuma alih keluar baki yang dikembalikan oleh antara muka

    balas
    0
  • PHP中文网

    PHP中文网2017-05-16 17:16:10

    Seorang rakan sekerja memberi saya penyelesaian.

    Ini adalah model antara muka biasa yang perlu dipertimbangkan untuk keserasian. Ia tidak disyorkan untuk meletakkannya di nginx. Contohnya:

    public class Output {
    
        private int todayRemaingCount;
        private int totalRemaingCount;
    
        // getter/setter methods;
    
        // 下一个版本升级,去掉此方法,预计在10.17。
        @Deprecated
        public int getRemainingCount() {
            return todayRemaingCount;
        }
    
    }
    

    balas
    0
  • PHP中文网

    PHP中文网2017-05-16 17:16:10

    Lebih baik buat pemprosesan di lapisan perniagaan Tidak digalakkan untuk mengubah suai nginx

    balas
    0
  • Batalbalas