【问题标题】:retrieving HTTP Post request from JobAdder从 JobAdder 检索 HTTP Post 请求
【发布时间】:2019-03-19 01:50:20
【问题描述】:

我的任务是将 Jobadder 上的工作链接到我的客户 WP 网站。

Jobadder 无法使用我首选的 SFTP,因此计划 b 是将 XML 数据 HTTP POST 到网站。

他们要求提供一个 URL,所以我做了一些研究,发现 WP 有内置功能。

这是我在主题的functions.php文件中的代码

add_action( 'rest_api_init', function () {
 register_rest_route( 'xmlfeed/v1', '/jobs', array(
 'methods'  => 'POST',
 'callback' => 'get_jobs',
 ) );
} );

function get_jobs() {
 header('Content-type: text/xml');
 if ( $_SERVER['REQUEST_METHOD'] == 'POST' ) {
    $data = file_get_contents("php://input");
    $xmlfile = "jobs.xml";
    $FileHandle = fopen($xmlfile, "w") or die("can't open file");
    fwrite( $FileHandle, str_replace("xml=", "", urldecode($data)) );
    fclose($FileHandle);
}

所以,当我在 Postman 中转到 http://xxx.staging.wpengine.com/wp-json/xmlfeed/v1/jobs 时,将一些 XML 数据添加到它显示回来的正文中。

但是,它似乎不会触发写入 XML 文件的代码。

我以前从来没有这样做过,也没有在网上找到任何可以帮助的东西,所以希望有人能指出我正确的方向。

【问题讨论】:

    标签: php wordpress http-post


    【解决方案1】:

    解决了 - 需要 XML 文件的完整路径,在这种情况下 - “wp-content/uploads/job-feed/jobs.xml”

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-08-03
      • 1970-01-01
      • 2014-11-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多