V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
xmbaozi
V2EX  ›  问与答

请问 chrome.downloads.download 中 post body 怎么写

  •  
  •   xmbaozi · 2014-02-23 18:16:11 +08:00 · 3594 次点击
    这是一个创建于 3917 天前的主题,其中的信息可能已经有所发展或是发生改变。
    官方文档https://developer.chrome.com/extensions/downloads#method-download
    我的写法
    chrome.downloads.download({
    url:downTextUrl,
    filename:filename,
    method:'POST',
    body : 'keyName=value'
    });

    php var_dump($_POST); 的结果是空
    同样的问题
    http://stackoverflow.com/questions/15329166/how-to-send-post-data-on-the-chrome-downloads-download-method

    搞了半天还是不行。。
    2 条回复    1970-01-01 08:00:00 +08:00
    jakwings
        1
    jakwings  
       2014-02-24 00:38:58 +08:00   ❤️ 1
    测试脚本:
    <?php
    header('Content-Type: text/plain; charset="utf-8"');
    var_dump($_SERVER['REQUEST_METHOD']);
    var_dump($_GET);
    var_dump($_POST);
    var_dump($_SERVER['CONTENT_TYPE']);
    var_dump(file_get_contents('php://input')); // $HTTP_RAW_POST_DATA
    ?>

    不行的原因是没有指定 content-type ,PHP 无法解析 post body 到 $_POST ,但是 body 依然是有内容的。
    用 parse_str 函数解析 body 内容即可。 http://www.php.net/manual/en/function.parse-str.php
    xmbaozi
        2
    xmbaozi  
    OP
       2014-02-24 01:21:26 +08:00
    @jakwings 解决了,就是这个问题,非常感谢
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1562 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 21ms · UTC 17:12 · PVG 01:12 · LAX 09:12 · JFK 12:12
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.