小编Mar*_*ean的帖子

允许用户将MP3上传到Amazon S3

我正在一个用户可以上传播客的网站上工作.播客是MP3文件,存储在Amazon S3存储桶中.

这是正常的流量是什么?我用Google搜索了,但是任何与文件上传相关的文章都倾向于使用亚马逊客户端库,理想情况下我不想使用PHP(我使用LAMP堆栈)来上传MP3文件,因为超时,文件尺寸限制等

有没有解决的办法?

php amazon-s3

6
推荐指数
1
解决办法
1979
查看次数

通过 AWS CLI 将文件上传到 S3 时出现“管道损坏”

我的计算机上有一个 M4V 文件目录(每个文件大约 1 GB),我想将其上传到我的 S3 存储桶。我决定尝试 AWS CLI,这样我就可以执行命令并让我的计算机完成其余的工作,但它似乎不起作用。

\n\n

I\xe2\x80\x99m 发出的命令是:

\n\n
aws s3 cp . s3://yourfightsite-vod/videos/output/m4v --recursive --acl private\n
Run Code Online (Sandbox Code Playgroud)\n\n

但运行此命令会返回如下输出:

\n\n
\n

上传失败:./54cffd1ad106d.m4v 到 s3://yourfightsite-vod/videos/output/m4v/54cffd1ad106d.m4v\n HTTPSConnectionPool(host='yourfightsite-vod.s3.amazonaws.com', port=443):最大重试次数超出网址:/videos/output/m4v/54cffd1ad106d.m4v?partNumber=4&uploadId=oG.0CBqIpsRcxO.ZqLIgOOBi8g9JFOKD8wQrmrNFa6Cx9LvGY9_PXiqaaVm6X3fIzXbCor8QSMEeqCfovtivHNFVyea8UNoxrVTpTEv M3ibGBxF30HGPkrxWuA83k6gj(原因:Errno 32 管道损坏)

\n
\n\n

这是什么意思?什么是 \xe2\x80\x9cbroken pipeline\xe2\x80\x9d 以及如何纠正此问题以便上传成功?

\n

command-line-interface amazon-s3 amazon-web-services

6
推荐指数
1
解决办法
2万
查看次数

可以返回或错误的Swift方法的最佳实践

我正在练习Swift并且有一个场景(和方法),其结果可能是成功的,也可能是失败的.

这是一个安全服务类.我有一个方法,我可以使用电子邮件地址和密码进行身份验证,并希望User在凭据正确时返回实例,或者抛出某种形式的false值.

我有点困惑,因为我对Swift方法的理解是你需要指定一个返回类型,所以我有:

class SecurityService {
    static func loginWith(email: String, password: String) -> User {
        // Body
    }
}
Run Code Online (Sandbox Code Playgroud)

我在Go和Node.js方法中看到了返回"double"值的方法,其中第一个表示任何错误,第二个是"成功"响应.我也知道Swift没有错误或异常之类的东西(但是因为我正在学习Swift的早期版本,所以可能已经改变了).

在这种情况下,适当的做法是什么?

swift

6
推荐指数
2
解决办法
4428
查看次数

实现多语言URL的最佳方式?

我正在开发一个多语言的利基社交网站.这意味着我们当前的URL结构很快将需要开始使用翻译的单词,如下所示:

www.example.com/homewww.example.com/inicio

www.example.com/profilewww.example.com/perfil

www.example.com/helpwww.example.com/ayuda

等等.我的问题是:在PHP应用程序中支持这个的最佳方法是什么?对于传入的请求,我认为我的router.php文件中的以下字典就足够了:

<?php
$request = explode("/", trim($_SERVER['REQUEST_URI'], "/"));

// Dictionaries of page slugs.
$slugs = array(
    'es' => array(
        'inicio' => 'home',
        'perfil' => 'profile',
        'ayuda' => 'help',
    )
    // additional languages can be added here
);

// Rewrite any incoming (foreign) requests
if ($host=="www.example.es") { // to be made programmatic
    $lang = "es"; // pick up from locale constant rather being hard-coded
    if (array_key_exists($request[0], $slugs[$lang])) {
        $request[0] = …
Run Code Online (Sandbox Code Playgroud)

php multilingual url-routing internationalization

5
推荐指数
1
解决办法
1724
查看次数

COUNT(fld) 比 COUNT(*) 快吗?

可能的重复:
MySQL 中的 COUNT(id) 与 COUNT(*)

简短而简单:在 MySQL 中,会比我理解的MySQL 中的“all”选择器SELECT COUNT(fld) AS count FROM tbl更快。SELECT COUNT(*) AS count FROM tbl*

是否COUNT(*)选择所有行来计算计数,从而使查询SELECT(id)更便宜?或者这并不重要?

mysql sql

5
推荐指数
1
解决办法
749
查看次数

哪种设计模式最适合允许来自多个提供商的一个公共类?

我正在寻找一个应用程序.想想电子商务.但想想,一个由其他提供商提供支持的电子商务网站.

因此情况就是:我会在一个由客户现有的电子商务平台提供支持的电子商务网站前面贴上白色标签,无论是Magento,CubeCart,Prestashop等等.

这些平台都将拥有自己的命名约定和诸如此类的东西,我希望在我的应用程序中有一个通用界面.例如:

class Product {
    var $title;
    var $price;
    var $image;
    var $description;
    // and so on
}
Run Code Online (Sandbox Code Playgroud)

显然,不同的提供商可能会以不同的方式称呼 例如,title可能product_title在提供者,或product_name,或productTitle等等.另一个例子:price可能是cost,或者unit_price等等.希望问题变得明显.

理想情况下,我想指出从应用程序的业务类中抽象服务的最佳设计模式,因此我可以添加提供程序,而无需重新考虑我的应用程序中的任何内容.

对于上述场景,哪种设计模式最佳?

oop design-patterns

5
推荐指数
1
解决办法
513
查看次数

奇怪的 jQuery AJAX 行为:XML 作为 #document 而不是对象返回

我在使用 jQuery 时遇到了问题,尝试获取 XML 文档时,它会像#document在控制台中一样返回,而不是我可以操作的对象。为什么是这样?

这是我的 JavaScript 代码:

$.get('/ingredients/view_xml/' + ingredientId, function(xml) {
    console.log(xml);
}, 'xml');
Run Code Online (Sandbox Code Playgroud)

这是 XML:

<?xml version="1.0" encoding="UTF-8" ?>
<ingredient>
    <entryId>700</entryId>
    <title>GUINEA FOWL WHOLE FRESH X 1.5KG</title>
    <ingredientUnit>KG</ingredientUnit>
    <ingredientCost>5.03</ingredientCost>
</ingredient>
Run Code Online (Sandbox Code Playgroud)

任何帮助将不胜感激,即使这是我犯下的一个n00b错误并且现在看不到!

xml ajax jquery

5
推荐指数
1
解决办法
3707
查看次数

停止输入/返回键提交表单

我在表格中有一张桌子.该表包含一些表单字段,但表格外部还有表单字段(但仍在表单中).

我知道Enter和Return传统上用于通过键盘提交表单,但我想为表中的字段停止此行为.例如,如果我将一个字段集中在表中并按Enter/Return,则不会发生任何事情.如果我将一个字段聚焦在表格之外(但仍然在表格内),那么它就像正常一样提交.

我有一个针对此表的jQuery插件.简化,这是我迄今为止尝试过的:

base.on('keydown', function(e) {
    if (e.keyCode == 13) {
        e.stopPropagation();
        return false;
    }
});
Run Code Online (Sandbox Code Playgroud)

base表jQuery对象在哪里.这是我的插件的init方法.但是,按Enter键仍会提交表单.

我哪里错了?

编辑:一些简化的HTML:

<form method="" action="">
  <input type="text" /><!--this should still submit on Enter-->
  <table>
    <tbody>
      <tr>
        <td>
          <input type="text" /><!--this should NOT submit on Enter-->
        </td>
      </tr>
    </tbody>
  </table>
</form>
Run Code Online (Sandbox Code Playgroud)

javascript forms jquery keyboard-events jquery-events

5
推荐指数
1
解决办法
1万
查看次数

使用SimpleXML编写XML文件时如何使用命名空间

我正在使用PHP中的SimpleXML编写Google产品RSS源.我的产品来自数据库并且创建了RSS文件,但是在命名空间方面存在问题.

我已经用Google搜索并搜索了Stack Overflow并发现了很多关于如何解析包含命名空间的XML提要的帖子,但我的问题实际上是创建了一个带有命名空间的XML文件.

这是文件应该是什么样子:

<?xml version="1.0" encoding="UTF-8" ?>
<rss version ="2.0" xmlns:g="http://base.google.com/ns/1.0">
    <!-- content -->
</rss>
Run Code Online (Sandbox Code Playgroud)

这是我的代码:

<?php

$xml = new SimpleXMLElement('<rss></rss>');
$xml->addAttribute('version', '2.0');

$xml->addChild('channel');
$xml->channel->addChild('title', 'Removed');
$xml->channel->addChild('description', 'Removed');
$xml->channel->addChild('link', 'Removed');

foreach ($products as $product) {
    $item = $xml->channel->addChild('item');
    $item->addChild('title', htmlspecialchars($product['title']));
    $item->addChild('description', htmlspecialchars($product['title']));
    $item->addChild('link', $product['url']);
    $item->addChild('id', $product['product_id']);
    $item->addChild('price', $product['price_latest']);
    $item->addChild('brand', $product['range']);
    $item->addChild('condition', 'new');
    $item->addChild('image_link', $product['image']);
}
Run Code Online (Sandbox Code Playgroud)

我如何介绍g的命名空间,无论是xmlns在根声明rss元素,然后作为前缀id,price,brand,conditionimage_link在每个item元素?

php simplexml xml-namespaces

5
推荐指数
2
解决办法
3974
查看次数

到同一个 Laravel 资源控制器操作的多个路由

我喜欢在 Laravel 中使用资源控制器,因为它让我思考数据建模。到目前为止,我\xe2\x80\x99m已经过去了,但我\xe2\x80\x99m现在在一个具有公共前端和受保护后端(管理区域)的网站上工作。

\n\n

我\xe2\x80\x99ve创建了一个路由组,它添加了\xe2\x80\x9cadmin\xe2\x80\x9d前缀,如下所示:

\n\n
Route::group(array(\'before\' => \'auth\', \'prefix\' => \'admin\'), function()\n{\n    Route::resource(\'article\', \'ArticleController\');\n    Route::resource(\'event\', \'EventController\');\n    Route::resource(\'user\', \'UserController\');    \n});\n
Run Code Online (Sandbox Code Playgroud)\n\n

我可以使用默认 URL 结构访问这些方法,即http://example.com/admin/article/1/edit

\n\n

但是,我希望在前端使用不同的URL 结构,这不符合资源控制器的期望。

\n\n

例如,要访问一篇文章,我\xe2\x80\x99d喜欢使用如下URL:http://example.com/news/2014/06/17/some-article-slug。如果这篇文章的 ID 为 1,它应该(在幕后)转到/article/1/show

\n\n

我怎样才能在 Laravel 中实现这一目标?在其中,我可以对路线进行某种预处理,以将日期和段与文章 ID 相匹配,然后其作为参数传递给我的资源控制器\xe2\x80\x99sshow()方法?

\n

routes laravel

5
推荐指数
1
解决办法
5244
查看次数