从 Flex 连接到 salesforce.com 时出现登录错误 [英] Login error connecting to salesforce.com from Flex

查看:30
本文介绍了从 Flex 连接到 salesforce.com 时出现登录错误的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

是否有人突然遇到用户尝试从 Flex 应用程序使用 as3salesforce.swc 连接到 salesforce.com 的登录错误?

Has anyone suddenly encountered login errors from their users trying to connect to salesforce.com from a Flex app using as3salesforce.swc?

我收到以下错误...密码已删除以保护无辜者...

I get the following error... password removed to protect the innocent...

App Domain = null
Api Server name = na3.salesforce.com
_internalServerUrl = https://na3.salesforce.com/services/Soap/u/14.0
loading the policy file: https://na3.salesforce.com/services/Soap/cross-domain.xml
Your application must be running on a https server in order to use https to communicate with salesforce.com!
login with creds
loading the policy file: https://na3.salesforce.com/services/crossdomain.xml
Your application must be running on a https server in order to use https to communicate with salesforce.com!
invoke login
intServerUrl is null
intServerUrl = https://na3.salesforce.com/services/Soap/u/14.0
_invoke login
'5A5D3012-7717-E3C2-9B39-FFBBFF1F1B47' producer set destination to 'DefaultHTTPS'.
Method name is: login
'direct_http_channel' channel endpoint set to http://localhost/pm_server/pm/
'5A5D3012-7717-E3C2-9B39-FFBBFF1F1B47' producer sending message 'E32C7199-72C1-B258-B483-FFBC1641173D'
'direct_http_channel' channel sending message:
(mx.messaging.messages::HTTPRequestMessage)#0
  body = "<se:Envelope xmlns:se="http://schemas.xmlsoap.org/soap/envelope/"><se:Header xmlns:sfns="urn:partner.soap.sforce.com"/><se:Body><login xmlns="urn:partner.soap.sforce.com" xmlns:ns1="sobject.partner.soap.sforce.com"><username>simon.palmer@dialectyx.com</username><password>******</password></login></se:Body></se:Envelope>"
  clientId = (null)
  contentType = "text/xml; charset=UTF-8"
  destination = "DefaultHTTPS"
  headers = (Object)#1
  httpHeaders = (Object)#2
    Accept = "text/xml"
    SOAPAction = """"
    X-Salesforce-No-500-SC = "true"
  messageId = "E32C7199-72C1-B258-B483-FFBC1641173D"
  method = "POST"
  recordHeaders = false
  timestamp = 0
  timeToLive = 0
  url = "https://na3.salesforce.com/services/Soap/u/14.0"
'5A5D3012-7717-E3C2-9B39-FFBBFF1F1B47' producer connected.
Method name is: login
Error: Ignoring policy file at https://na3.salesforce.com/crossdomain.xml due to meta-policy 'by-content-type'.

'5A5D3012-7717-E3C2-9B39-FFBBFF1F1B47' producer acknowledge of 'E32C7199-72C1-B258-B483-FFBC1641173D'.
responseType: Fault
Saleforce Soap Fault: sf:INVALID_LOGIN
INVALID_LOGIN: Invalid username, password, security token; or user locked out.
Comunication Error : sf:INVALID_LOGIN : INVALID_LOGIN: Invalid username, password, security token; or user locked out. : [object Object]

推荐答案

显然没有其他人在 salesforce.com 上构建 Flex 应用程序..

Obviously nobody else out there is building Flex apps on top of salesforce.com..

yippee,我是第一个.

yippee, I'm first.

无论如何,我刚刚发现这是 2008 年 12 月 6 日在 salesforce.com 上的一个错误.问题在于,由于 salesforce.com 上的负载平衡,处理登录的脚本无法充分应对必要的重定向服务器.

Anyhow, I just found out that this is a bug at salesforce.com as at 6th December 2008. The issue is that the scripts which handle login do not cope adequately with the redirect necessary because of load balancing on the salesforce.com servers.

应该可以使用诸如...之类的 URL 来通过 salesforce.com api 的 www 前门.

It should be possible to go through the www front door of salesforce.com's api with a URL such as...

"https://www.salesforce.com/services/Soap/u/13.0";

其中 13 代表您所针对的 API 版本.但是,所有用户实际上都分配到了特定的服务器,因此前门应该将登录请求重定向到适当的位置,如果您来自 Flex,则不会.

where the 13 represents the version of their API you are targetting. However, all users are actually assigned to a specific server, so the front door should redirect the login request to the approriate place, and it doesn't if you are coming from Flex.

一种解决方法是在 URL 中指定您的服务器,例如...

A workround is to specify your server in the URL, such as...

"https://na5.salesforce.com/services/Soap/u/13.0";

...这就是我正在做的.如果您是持续访问相同资源的单个用户,并且您的帐户仍然连接到该服务器,那很好.但是如果...

...which is what I was doing. That's fine if you are a single user accessing the same resources continually and your account remains attached to that server. However if...

  1. 您正在分发您的应用程序,以便拥有 salesforce.com 企业帐户的任何人都可以登录或
  2. 由于某些内部负载平衡(这就是我遇到的情况),您的帐户被移动了

那么提供固定服务器的方法是行不通的.

then the approach of providing a fixed server won't work.

错误(据我所知)是 www 路由没有充分重定向到您的主机服务器.最后的情报是它将很快"修复.

The bug (as far as I understand it) is that the www route doesn't adequately redirect to your host server. Last intelligence was that it will be fixed "soon".

我希望我能将此标记为答案...

I wish I could mark this as the answer...

这篇关于从 Flex 连接到 salesforce.com 时出现登录错误的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆