如何解决未处理的原始xml帖子的问题?

时间:2019-10-12 03:11:31

标签: php xml server

第三方服务向服务器发出原始xml字符串的发布请求,以便对其进行处理。但是,它没有被处理。如何配置为接受原始xml字符串?

该php网站最近已从其他提供商迁移到托管在BlueHost上。以前在哪里托管,它能够处理xml。自从迁移到BlueHost以来,它不起作用。我将代码略微更改为通过电子邮件发送,如果到达那里只是为了查看是否成功,事实并非如此。我检查了访问日志,我唯一能说的是,在第三方发出请求时,它看起来像是406错误。如果有任何服务器配置,我无法联系旧提供商。

应该发生的事情是,当第三方通过xml时,它会通过电子邮件发送一个副本并将一个条目插入到数据表中。到目前为止,它似乎并未这样做。

所以我不确定可能是什么问题以及从哪里开始寻找。任何帮助将不胜感激。

更新

下面的代码验证IP是否有效,如果有效,则应处理XML字符串。我从第三方获得了所有IP地址,因此没有中断。如果它访问了此页面,我将代码添加到通过电子邮件发送给我。到目前为止,还没有收到任何电子邮件。

    ArrayList<ModelSingleHotTrendingNews> modelSingleHotTrendingNews = new ArrayList<>(); 
    Bundle bundle = getIntent().getExtras();

    if(bundle!=null { 
        modelSingleHotTrendingNews = ArrayList<ModelSingleHotTrendingNews>) bundle.getSerializable("MoreNews");
    }

当第三方试图发出请求时,我在BlueHost提供的访问日志中发现了这一点:


require_once "loader.php";
// Initiate Parse
$Feed = new FeedParser();
$Job = new Job();
$IP = $_SERVER['REMOTE_ADDR'];
// Initiate Job Model

if($Job->verifyIP($IP) == false){
    $headers = "From: webapp@certainplace.com\r\n";
    mail('someemail@somewhere.com', 'Failed', 'The following ip failed: '.$IP, $headers);
    die("Your IP address is not white listed. please contact system adminstrator.");
}else{
    $headers = "From: webapp@certainplace.com\r\n";
    mail('someemail@somewhere.com', 'Here', 'Made it here', $headers);  
}

// Capture XML By Key
$xml = file_get_contents('php://input');

if($xml != '') {
    $headers = "From: webapp@certainplace.com\r\n";
    $options = "-fwebapp@certainplace.com";
    mail('someemail@somewhere.com', 'XML Code', $xml, $headers, $options);

    $Job->addXML($xml);
}

因此,似乎有些事情正在发生,但服务器似乎正在阻止该请求。

0 个答案:

没有答案