小编Leo*_*eel的帖子

为什么iPhone Safari上没有JavaScript .play()音频文件?

我有一个JavaScript Web应用程序工作,定期播放一些音频,如下所示:

var SOUND_SUCCESS = new Audio('success.mp3');
SOUND_SUCCESS.play();
Run Code Online (Sandbox Code Playgroud)

这适用于桌面浏览器(在Edge和Chrome中测试),但它不能在iPhone上的Safari上播放.

我查看了Stack Overflow,几年前我发现一些答案,除非你在全屏播放器中,否则不可能从Safari播放音频.这仍然是这样吗?

javascript iphone safari audio ios

23
推荐指数
4
解决办法
3万
查看次数

更改DIV高度以适合图像

我正在尝试制作一个DIV,它几乎是一个带有左边对齐图像和文本位于图像右侧的边框.以下是我设置的方法:

    <div style="padding:1%; border-style:solid; border-size:1px; width:100%;">
        <img src="http://i.imgur.com/FwgZFNn.jpg" style="float:left; max-width:30%; max-height:200px;" />
        Here is some text.
    </div>
Run Code Online (Sandbox Code Playgroud)

问题在于,如果图像高于文本,则周围的DIV(以及边界)将自身调整为适合所有文本所需的高度,但图像溢出DIV.

如何使DIV更改其高度以适合较高者(图像或文本),以便两者都适合边框?

谢谢.

html css

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

即使应用程序获得批准,也无法向非测试用户发送Messenger消息

我的Messenger应用程序今天早些时候(几小时前)获得批准; 应用管理页面说:

已批准:pages_messaging

但是现在有人(以前不是测试人员)试图使用它,我会遇到错误.具体来说,如果我尝试发送消息,API将返回此信息:

'content':'{"error":{"message":"(#10)在审核pages_messaging权限且应用程序处于活动状态之前,无法向不是管理员,开发人员或测试人员的用户发送消息.","type" : "OAuthException", "代码":10 "fbtrace_id": "DsZ8V5KCPeP"}}"

我是否需要做一些事情以使非测试人员能够与我的机器人交谈,或者Facebook的批准状态是否尚未传播?

messenger facebook-messenger

4
推荐指数
1
解决办法
2296
查看次数

Java Spark 中的 `:path-param` 和 `{path-param}` 有什么区别?

我正在使用 Java Spark 构建 REST 服务器,我想知道以下两种用于定义路径参数的语法之间的区别,使用:path-parametervs {path-parameter}

path("/containers/:container-id", () -> { ...} )

path("/shipments/{shipment-id}", () -> { ... } )
Run Code Online (Sandbox Code Playgroud)

有一次,当查询路径上的路径参数/{handler-id}(嵌套在/v1和 中/handlers)时,我不得不将语法从:表单更改为{}表单,以使 Sparknull在查询handler-id.

那么这两种语法有什么区别呢?

java url-routing spark-java

4
推荐指数
1
解决办法
1961
查看次数

在Ubuntu上通过SSL的Apache ERR_CONNECTION_REFUSED

我正在尝试在Ubuntu上设置Apache(2.4)服务器。目前,我只是试图从中提供静态页面/var/www/html(尽管最终我想运行WSGI Python应用程序)。

这是我的sites-available/website.conf档案:

<VirtualHost *:443>
        ServerAdmin email@gmail.com
        ServerName website.com:443
        SSLEngine on
        SSLCertificateFile /root/website.csr
        SSLCertificateKeyFile /root/website.key
        DocumentRoot /var/www/html
        <Directory />
                Options FollowSymLinks
                AllowOverride None
        </Directory>
        <Directory /var/www/>
                Options Indexes FollowSymLinks MultiViews
                AllowOverride None
                Order allow,deny
                allow from all
        </Directory>
        ErrorLog ${APACHE_LOG_DIR}/error.log
        CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
Run Code Online (Sandbox Code Playgroud)

(将我的实际域名替换为“网站”。)

当我尝试通过转到我的域名或服务器的IP地址连接到此服务器时,Chrome会给我ERR_CONNECTION_REFUSED(“无法访问此站点”)。

我也尝试使用telnet:

root@website:/etc/apache2# telnet localhost 443
Trying ::1...
Trying 127.0.0.1...
telnet: Unable to connect to remote host: Connection refused
Run Code Online (Sandbox Code Playgroud)

当我从配置文件中注释掉所有与SSL有关的行时,我可以通过telnet进行连接,但是Chrome可以为我提供服务ERR_SSL_PROTOCOL_ERROR(“该站点无法提供安全的连接”,我认为这很有意义)。

这也是我的ports.config,如果有帮助的话:

Listen 80

<IfModule ssl_module> …
Run Code Online (Sandbox Code Playgroud)

apache ubuntu ssl

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

阻止机器人抓取我的 Google App Engine 网站

我注意到我的 Google App Engine 网站正在被很多机器人(例如 Baido 和 Ahrefs)抓取,它们正在占用我的所有带宽和数据存储读取操作。

我知道在常规的自托管网站上,我会将 robots.txt 放入我的基本文件夹中,但是我到底如何告诉机器人不要在 Google App Engine 上抓取我的网站呢?我正在运行 python 和 jinja 2,如果这有什么区别的话。

谢谢。

python google-app-engine

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

为什么我无法连接到 Windows 10 上的本地 docker-compose 容器?

我正在尝试 dockerize 一个 Python 应用程序,为此我一直在关注本教程。本教程从 2015 年 4 月开始,仍然使用 Docker Machine,从这个答案来看,不再需要在 Windows 上本地运行 Docker 容器。

我之前在 Docker Machine 上使用过它,并且能够看到 Web 应用程序并与之交互。但是现在我正在尝试在没有 Docker Machine 的情况下使用 Docker 版本 17.06.0-ce,在 Windows 10 上构建 02c1d87。

这是docker-compose.yml

web:
  restart: always
  build: ./web
  expose:
    - "8000"
  links:
    - postgres:postgres
  volumes:
    - /usr/src/app/static
  env_file: .env
  command: /usr/local/bin/gunicorn -w 2 -b :8000 app:app

nginx:
  restart: always
  build: ./nginx/
  ports:
    - "80:80"
  volumes:
    - /www/static
  volumes_from:
    - web
  links:
    - web:web

data:
  image: …
Run Code Online (Sandbox Code Playgroud)

docker dockerfile docker-compose

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

在虚拟环境中的 Ubuntu 16.04 上将 Python 程序作为服务运行

我正在尝试让 Flask + SocketIO 应用程序在虚拟环境中的 Ubuntu 16.04 上作为服务运行。我的服务器每天凌晨 3 点重新启动(超出我的控制范围),因此我需要它在启动时自动启动。

单独运行脚本效果很好:

$ python main.py
(29539) wsgi starting up on http://127.0.0.1:8081
Run Code Online (Sandbox Code Playgroud)

我可以说它正在工作,因为它正在提供页面(通过按照Stack Overflow 答案设置的 nginx 服务器,尽管我认为这不相关。)

这是我的/etc/systemd/system/opendc.service

[Unit]
Description=OpenDC flask + socketio service

[Service]
Environment=PYTHON_HOME=/var/www/opendc.ewi.tudelft.nl/web-server/venv
Environment=PATH=$VIRTUAL_ENV/bin:$PATH
ExecStart=/var/www/opendc.ewi.tudelft.nl/web-server main.py
Restart=always

[Install]
WantedBy=multi-user.target
Run Code Online (Sandbox Code Playgroud)

所以当我尝试使用以下方法来实现这一点时:

$ sudo systemctl daemon-reload
$ sudo systemctl restart opendc
Run Code Online (Sandbox Code Playgroud)

它不再提供页面服务。状态显示:

$ sudo systemctl status opendc
* opendc.service - OpenDC flask + socketio service
   Loaded: loaded (/etc/systemd/system/opendc.service; enabled; vendor preset: enabled)
   Active: inactive (dead) (Result: exit-code) …
Run Code Online (Sandbox Code Playgroud)

python ubuntu daemon virtualenv flask

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

向Google App Engine NDB(Python)添加大量数据

我正在开发一个项目,要求我将大量数据(在数万个实体的规模上)导入Google App Engine NDB.

数据存储在一个文本文件中,我为此编写了一个解析程序,该程序生成文件中找到的实体列表,然后使用该put_multi()方法将其写入数据库.

当我将它应用于测试几百到几千个条目的数据集时,它工作正常; 将它应用于真实的数据集(现在大约有30,000个条目,但它会增长),然而,抛出一个DeadlineExceededError.我猜这意味着程序运行时间过长而App Engine会将其关闭.

所以我的问题是,如何在迭代一堆数据时运行需要很长时间才能完成的代码?

我已经阅读了一些关于任务队列的东西,但这似乎更多的是针对一个需要重复多次的短任务(而在这里,我真的只是在等待put_multi()完成).

这也是一个非常糟糕的用户体验,页面需要很长时间才能加载.我有什么方法可以让我的代码在用户初始化数据导入时运行,只需启动服务器上幕后实际解析和编写代码,同时用户获得一个页面说明数据正在处理中的背景?

谢谢

python google-app-engine python-2.7

0
推荐指数
1
解决办法
157
查看次数