Score:0

เหตุใดการตอบกลับที่เหลือของฉันจึงไม่ถูกแคช

ธง ph

ฉันสร้างจุดสิ้นสุดจุดพักอย่างง่ายเพื่อทดสอบการแคช และฉันเห็นการอัปเดตการตอบกลับ อะไรหยุดไม่ให้ถูกแคช?

นี่คือรหัสปลายทางที่เหลือ:

<?php

เนมสเปซ Drupal\nm_base_api\Plugin\rest\resource;

ใช้ Drupal\rest\ResourceResponse;
ใช้ Drupal\rest\Plugin\ResourceBase;
ใช้ Drupal\Core\Cache\CacheableMetaData;



/**
 * นี่เป็นเพียงตัวอย่างเท่านั้น
 *
 * @เรสท์รีซอร์ส(
 * id = "ทดสอบ",
 * ป้ายกำกับ = @Translation("ทดสอบ"),
 * uri_paths = {
 * "canonical" = "/api/v1/ทดสอบ"
 * }
 * )
 */
การทดสอบคลาสขยาย ResourceBase {

  /**
   * {@inheritdoc}
   */
  ฟังก์ชั่นสาธารณะได้รับ () {
    $response = ใหม่ ResourceResponse(
      [
        'title' => 'ทดสอบ',
        'เวลา' => เวลา(),
      ]
    );
    $cache_meta_data = ใหม่ CacheableMetadata();
    $cache_meta_data->setCacheMaxAge(2);
    $response->addCacheableDependency($cache_meta_data);

    ส่งคืน $response;
  }

}

และนี่คือสิ่งที่ฉันเห็นในการตอบสนอง:

$curl 'http://base.test:8020/api/v1/test'
{"ชื่อ":"ทดสอบ","เวลา":1651152255}

$ curl 'http://base.test:8020/api/v1/test'
{"ชื่อ":"ทดสอบ","เวลา":1651152256}

$ curl 'http://base.test:8020/api/v1/test'
{"ชื่อ":"ทดสอบ","เวลา":1651152257}
sonfd avatar
in flag
คุณเพียงแค่ต้องเพิ่มข้อมูลเมตาของแคชที่ถูกต้องในการตอบกลับหรือไม่
4uk4 avatar
cn flag
สิ่งนี้ตอบคำถามของคุณหรือไม่ [D8: ไม่สามารถตั้งค่าอายุสูงสุดของแคชใน ResourceResponse](https://drupal.stackexchange.com/questions/255579/d8-unable-to-set-cache-max-age-on-resourceresponse)
Lambic avatar
ph flag
ดูเหมือนจะตรงกันข้าม พวกเขาไม่ต้องการแคช แต่มีมัน ฉันต้องการแคช แต่ไม่มี
sonfd avatar
in flag
@Lambic - คุณเห็นไหมว่าพวกเขาเพิ่มข้อมูลเมตาของแคชในโพสต์นั้นอย่างไร นั่นคือสิ่งที่คุณต้องทำ
Lambic avatar
ph flag
ฉันลองแล้วและอัปเดตตัวอย่างด้านบน แต่ก็ยังไม่มีการแคชเกิดขึ้น
4uk4 avatar
cn flag
อาจเป็นการตั้งค่า dev ในเครื่องที่ปิดใช้งานการแคช
Lambic avatar
ph flag
เป็นไปได้ ดังนั้นฉันจึงพุชโค้ดไปยังอินสแตนซ์ ci เพื่อทดสอบที่นั่น และยังคงพบปัญหาเดิมนอกจากนี้ เรากำลังเรียกใช้ redis เป็นแคชแบ็กเอนด์ ดังนั้นจึงเป็นไปได้ที่ redis จะเฉพาะเจาะจง
sonfd avatar
in flag
หน้าอื่นถูกแคชหรือไม่
Lambic avatar
ph flag
จริงๆ แล้วยากที่จะบอกได้เพราะเป็นไซต์ที่ขับเคลื่อนด้วย API และไม่มีเนื้อหาสาธารณะ แต่ฉันจะลองเล่นดูว่าจะทดสอบได้ไหม

โพสต์คำตอบ

คนส่วนใหญ่ไม่เข้าใจว่าการถามคำถามมากมายจะปลดล็อกการเรียนรู้และปรับปรุงความสัมพันธ์ระหว่างบุคคล ตัวอย่างเช่น ในการศึกษาของ Alison แม้ว่าผู้คนจะจำได้อย่างแม่นยำว่ามีคำถามกี่ข้อที่ถูกถามในการสนทนา แต่พวกเขาไม่เข้าใจความเชื่อมโยงระหว่างคำถามและความชอบ จากการศึกษาทั้ง 4 เรื่องที่ผู้เข้าร่วมมีส่วนร่วมในการสนทนาด้วยตนเองหรืออ่านบันทึกการสนทนาของผู้อื่น ผู้คนมักไม่ตระหนักว่าการถามคำถามจะมีอิทธิพลหรือมีอิทธิพลต่อระดับมิตรภาพระหว่างผู้สนทนา