小编Sim*_*mon的帖子

Python urllib2基本身份验证问题

更新:基于Lee的评论我决定将我的代码压缩成一个非常简单的脚本并从命令行运行它:

import urllib2
import sys

username = sys.argv[1]
password = sys.argv[2]
url = sys.argv[3]
print("calling %s with %s:%s\n" % (url, username, password))

passman = urllib2.HTTPPasswordMgrWithDefaultRealm()
passman.add_password(None, url, username, password)
urllib2.install_opener(urllib2.build_opener(urllib2.HTTPBasicAuthHandler(passman)))

req = urllib2.Request(url)
f = urllib2.urlopen(req)
data = f.read()
print(data)
Run Code Online (Sandbox Code Playgroud)

不幸的是它仍然不会生成Authorization标题(每Wireshark):(

我在通过urllib2发送基本AUTH时遇到问题.我看了一下这篇文章,并按照这个例子.我的代码:

passman = urllib2.HTTPPasswordMgrWithDefaultRealm()
passman.add_password(None, "api.foursquare.com", username, password)
urllib2.install_opener(urllib2.build_opener(urllib2.HTTPBasicAuthHandler(passman)))

req = urllib2.Request("http://api.foursquare.com/v1/user")    
f = urllib2.urlopen(req)
data = f.read()
Run Code Online (Sandbox Code Playgroud)

我通过wireshark在Wire上看到以下内容:

GET /v1/user HTTP/1.1
Host: api.foursquare.com
Connection: close
Accept-Encoding: gzip
User-Agent: Python-urllib/2.5 
Run Code Online (Sandbox Code Playgroud)

您可以看到未通过curl发送请求时发送授权: curl -u user:password http://api.foursquare.com/v1/user …

python authentication urllib2

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

使用Doctrine访问Symfony 2中的一对多关系时出错

我有一个简单的一对多关系,当我尝试迭代集合时会出错.

来自"One"User.php

    /**
     * @ORM\OneToMany(targetEntity="UserMeasurement", mappedBy="measurements")
     */
    protected $measurements;
Run Code Online (Sandbox Code Playgroud)

和相应的"很多"UserMeasurement.php:

    /**
     * @ORM\ManyToOne(targetEntity="User", inversedBy="measurements", cascade={"persist"})
     * @ORM\JoinColumn(name="user_id", referencedColumnName="id")
     */
    protected $user;
Run Code Online (Sandbox Code Playgroud)

然而,当我尝试从命令运行时:

    $query = $em->createQuery(" SELECT user FROM AcmeFooBundle:User user");
    $users = $query->getResult();
    foreach ($users as $user) {
        print count($user->getMeasurements()->toArray());
    }
Run Code Online (Sandbox Code Playgroud)

我收到以下错误:

[ErrorException]
注意:未定义的索引:/Applications/MAMP/htdocs/Symfony/vendor/doctrine/lib/Doctrine/ORM/Persisters/BasicEntityPersister.php第1280行中的度量

我运行doctrine:schema:update --force命令,它说我在同步.

我错误地迭代了吗?

php doctrine symfony

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

Android Web浏览器缩放比精灵更有效地为图像工作

我正在开发一个移动Web应用程序,我有一个主屏幕,上面有许多图标,所以我尝试使用精灵一次性服务所有图像.

然而,我注意到iphone4在我的精灵中很好地缩放了图像(它们看起来有点抖动),但在我的HTC Evo上,精灵渲染的图像看起来非常块状.我切换到标准图像(背景:(/ image_url /)没有背景位置),图像看起来好多了 - 看到这个屏幕截图,左图像是使用单个图像提供的,而右边的图像是从精灵提供的(但是在精灵中是相同的图像).

有没有办法让Android浏览器更好地解释精灵?

android css-sprites mobile-website android-browser

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

使用Nose运行单元测试时出现南错误

让我的django测试正常运行我遇到了一些困难; 我正在使用nose,并且在应用迁移时我开始收到错误,从表1到表2的外键关系失败并出现错误:

django.db.utils.DatabaseError: relation "table2_column" does not exist
Run Code Online (Sandbox Code Playgroud)

看一下迁移的应用方式,我很清楚table1是在应用外键关系之前没有创建的,所以我试图找出如何强制依赖,并找到以下文章: http:// south.aeracode.org/docs/dependencies.html

然后我补充说:

depends_on = (
    ("app2", "0001_inital"),
)
Run Code Online (Sandbox Code Playgroud)

到我的app1/0001_initial.py文件.

不幸的是现在我收到以下错误:

south.exceptions.DependsOnUnknownMigrationMigration 'app1:0001_initial' depends on unknown migration 'app2:0001_inital'.
Run Code Online (Sandbox Code Playgroud)

关于如何解决这个问题的任何想法?

migration django nose django-south

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

如何在不使用密钥名称的情况下确保Google App引擎中对象的数据完整性?

我在Google App Engine中遇到一些麻烦,确保在使用没有键名的祖先关系时我的数据是正确的.

让我再解释一下:我有一个父实体,我想创建一个子实体.我想创建一个带有类别名称和项目名称的函数,如果它们不存在则创建它们.最初我创建了一个事务,如果需要使用密钥名称在事务中创建,这很好.但是,我意识到我不想使用名称作为密钥,因为它可能需要更改,我在我的事务中尝试执行此操作:

def add_item_txn(category_name, item_name):
  category_query = db.GqlQuery("SELECT * FROM Category WHERE name=:category_name", category_name=category_name)
category = category_query.get()
if not category:
    category = Category(name=category_name, count=0)

item_query = db.GqlQuery("SELECT * FROM Item WHERE name=:name AND ANCESTOR IS :category", name=item_name, category=category)
item_results = item_query.fetch(1)
if len(item_results) == 0:
  item = Item(parent=category, name=name)

db.run_in_transaction(add_item_txn, "foo", "bar")
Run Code Online (Sandbox Code Playgroud)

我试图运行它时发现的是App Engine拒绝这个,因为它不会让你在事务中运行查询:Only ancestor queries are allowed inside transactions.

查看Google提供的示例,了解如何解决此问题:

def decrement(key, amount=1):
    counter = db.get(key)
    counter.count -= amount …
Run Code Online (Sandbox Code Playgroud)

python google-app-engine transactions data-integrity

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

Facebook Connect w/Mobile Web App - 如何获得最流畅的流量?

我正在开发一个移动wep应用程序,并希望允许我的用户使用Facebook连接登录.

我最初实现了标准的Oauth2身份验证,但我发现了一些问题:

  • 当我将应用程序安装为主屏幕快捷方式并且用户需要进行身份验证时,用户将被重定向到Facebook的站点,以便在正常的Safari中进行身份验证.当用户被重定向回来时,用户仍处于safari中(使用顶部和底部导航栏).这显然是次优的,因为我想拥有全屏外观

  • 我无法登出正常工作,m_userfacebook.com上似乎还有一个cookie,它是以前登录过的用户的用户名.

我想,也许,我可以切换到用于facebook连接的javascript SDK并渲染一个pop-over而不是重定向舞蹈,但看起来这只是一个弹出式体验.当我在模拟器上尝试它时,主屏幕快捷方式显示为safari,然后登录后用户甚至没有登录(并且屏幕保持空白).

关于在移动网络(HTML5)应用上使用Facebook连接的最流畅方式的任何想法,特别是如果要保留主屏幕快捷方式?

谢谢!

-simon

html5 facebook mobile-website

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

使用带有casperjs的require返回"找不到模块"erorr

我正在关注用casperjs编写模块的文档,但是我收到了一个错误.

代码,直接来自文档:

// my module, stored in universe.js
// patching phantomjs' require()
var require = patchRequire(require);

// now you're ready to go
var utils = require('utils');
var magic = 42;
exports.answer = function() {
    return utils.format("it's %d", magic);
};
Run Code Online (Sandbox Code Playgroud)

和调用脚本:

var universe    = require("./universe");
var casper      = require("casper").create();


console.log(universe.answer());

casper.test.begin("Home Page", 1, function suite(test) {

});
Run Code Online (Sandbox Code Playgroud)

但是我收到以下错误:

casperjs test testStage.js
Test file: testStage.js
CasperError: Can't find module ./universe
  /usr/local/Cellar/casperjs/1/libexec/bin/bootstrap.js:214 in patchedRequire
  /Users/smosk/Google Drive/source/nest/testStage.js:1
FAIL CasperError: Can't find module …
Run Code Online (Sandbox Code Playgroud)

require casperjs

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

使用rake db:create创建Rails DB时出错

我试图让我的第一个"hello world"rails示例在我的OSX 10.6.3框中使用rails的入门指南.

当我去执行第一个rake db:create命令(我正在使用mysql)时,我得到:

simon@/Users/simon/source/rails/blog/config: rake db:create  (in /Users/simon/source/rails/blog) Couldn't create database for {"reconnect"=>false, "encoding"=>"utf8", "username"=>"root", "adapter"=>"mysql", "database"=>"blog_development", "pool"=>5, "password"=>nil, "socket"=>"/opt/local/var/run/mysql5/mysqld.sock"}, charset: utf8, collation: utf8_unicode_ci (if you set the charset manually, make sure you have a matching collation)
Run Code Online (Sandbox Code Playgroud)

我找到了大量的stackoverflow问题,通过以下建议解决了这个问题:

  1. 验证用户和密码是否正确(我在我的开发箱上运行w/root没有密码)

  2. 验证套接字是否正确 - 我可以捕获套接字,所以我认为它是正确的

  3. 验证用户是否可以创建数据库(如您所见,root可以连接并创建此数据库没问题)

    simon @/Users/simon/source/rails/blog/config:mysql -uroot -hlocalhost欢迎使用MySQL监视器.命令以;结尾; 或\ g.您的MySQL连接ID是16服务器版本:5.1.45源分发

    输入'help;' 或'\ h'寻求帮助.输入'\ c'清除当前输入语句.

    mysql> create database blog_development; 查询正常,1行受影响(0.00秒)

为了确保这不是一个charset问题我也尝试过:

mysql> create database foobar CHARACTER SET utf8 COLLATE utf8_general_ci;
Query OK, 1 row affected (0.00 …
Run Code Online (Sandbox Code Playgroud)

ruby rake ruby-on-rails

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