suchen

Heim  >  Fragen und Antworten  >  Hauptteil

Kann Nginx den Inhalt von Replysonse ändern?

nginx unterstützt eine solche Funktion, das heißt, kann der Inhalt von Replysonse geändert werden?

Zum Beispiel sieht der von der Schnittstelle zu Beginn zurückgegebene Inhalt so aus

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

Ein neues Attribut wurde später hinzugefügt – 总抽奖次数,于是想将之前的remainingCount改成更贴切的todayRemainingCount

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

Während des Online-Prozesses wird jedoch zuerst der Server online geschaltet, und dann wird H5 online geschaltet. Daher kann H5 in diesem Zeitraum nicht analysieren remainingCount, was Auswirkungen auf die normale Online-Geschäftslogik hat.

Deshalb möchte ich in diesem Zeitraum eine vorübergehende Verarbeitung über nginx durchführen, damit es reibungslos aktualisiert werden kann. Beispielsweise erstellt die Parsing-Serverschnittstelle automatisch ein nginx来做一下临时处理使得可以平滑升级, 如解析服务端接口基于todayRemainingCount自动创建一个remainingCount-Attribut basierend auf todayRemainingCount damit es mit der alten Schnittstelle wie folgt kompatibel sein kann

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

Diese vorübergehende Einschränkung wird aufgehoben, sobald H5 online geht.

大家讲道理大家讲道理2782 Tage vor580

Antworte allen(4)Ich werde antworten

  • 怪我咯

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

    可以,看看 https://openresty.org/en/
    你这种需求还是用程序作判断处理,或者多加个开关之类的比较好吧。
    线上的 nginx 也不会随便改配置。

    Antwort
    0
  • PHP中文网

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

    看你的需求,接口直接同时输出remainingCount和todayRemainingCount两项就可以了啊,调取接口的不管用哪个都能取到值,等你都部署好了之后再把接口返回的remainingCount去掉就行了

    Antwort
    0
  • PHP中文网

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

    同事给了一个解决方案。

    这是典型的接口模型该考虑的兼容。 不建议放到nginx上。比如:

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

    Antwort
    0
  • PHP中文网

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

    还是在业务层做处理吧,不建议修改nginx

    Antwort
    0
  • StornierenAntwort