簡體   English   中英

如何在PHP中解析YAML MIME類型

[英]How to parse YAML MIME type in PHP

大家下午好

我試圖在我的應用程序中捕獲源自Puppet Master服務器(Puppet開源版本4.9)的數據。 Puppet Server能夠處理來自其所有客戶端的報告,並將它們作為MIME類型application / x-yaml通過HTTP POST發送到目的地。 我已經配置了Puppet服務器將數據發送到我的應用程序服務器。

我看到流量從Puppet主服務器(通過tcpdump)進入我的應用程序服務器。 我還在應用程序中看到一些POST數據正在到達,但是,我不知道如何捕獲和解析它。 當我嘗試轉儲$ _POST數據時,它讀為空。 我正在使用Yii2作為應用程序框架。 有誰知道如何捕獲此數據並將其解析為插入數據庫中?

謝謝-cs

如果它是僅YAML的非多部分請求,則PHP不會解析除表單編碼或多部分之外的任何其他請求類型。PHP對此不會做任何事情。

您可以使用輸入流 php://input訪問原始請求正文。 例如:

use foolib/YamlParser;

$rawbody = file_get_contents('php://input');
$myobject = YamlParser($rawbody);

應該注意的是,YAML定義了一些數據結構,這些數據結構不能完全干凈地映射到本機PHP類型,因此YMMV取決於您選擇的解析器。 PHP沒有內置的YAML解析器。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM