我想在Flash电影中抓取同一个域的cookie值.这可能吗?
让我们看看我让用户设置变量foo并使用任何Web编程语言存储它.我可以通过该语言轻松访问它,但我希望通过Flash电影访问它,而不通过HTML页面中的打印传递它.
我有一个Flex文件上传脚本,它使用URLRequest将文件上传到服务器.我想添加对http身份验证(服务器上受密码保护的目录)的支持,但我不知道如何实现这一点 - 我假设我需要以某种方式扩展类,但是如何让我有点迷失.
我试图修改以下内容(用URLRequest替换HTTPService),但这不起作用.
private function authAndSend(service:HTTPService):void{
var encoder:Base64Encoder = new Base64Encoder();
encoder.encode("someusername:somepassword");
service.headers = {Authorization:"Basic " + encoder.toString()};
service.send();
}
Run Code Online (Sandbox Code Playgroud)
我应该指出,在ActionScript/Flex方面我并不知情,尽管我已经设法成功地修改了上传脚本.
[编辑] - 根据下面的答案,这里是我的进度的更新,虽然我仍然无法让这个工作:
谢谢您的帮助.我试图实现你的代码,但我没有运气.
我在处理HTTP身份验证位置时遇到的一般行为是,IE7一切都很好,但在Firefox中,当我尝试将文件上传到服务器时,它会显示一个HTTP身份验证提示 - 即使给出了正确的详细信息,也只是停顿上传过程.
我相信IE7正常的原因在于浏览器和Flash组件共享的会话/身份验证信息 - 但是,在Firefox中并非如此,我遇到了上述行为.
这是我更新的上传功能,包含您的更改:
private function pergress():void
{
if (fileCollection.length == 0)
{
var urlString:String = "upload_process.php?folder="+folderId+"&type="+uploadType+"&feid="+formElementId+"&filetotal="+fileTotal;
if (ExternalInterface.available)
{
ExternalInterface.call("uploadComplete", urlString);
}
}
if (fileCollection.length > 0)
{
fileTotal++;
var urlRequest:URLRequest = new URLRequest("upload_file.php?folder="+folderId+"&type="+uploadType+"&feid="+formElementId+"&obfuscate="+obfuscateHash+"&sessidpass="+sessionPass);
urlRequest.method = URLRequestMethod.POST;
urlRequest.data = new URLVariables("name=Bryn+Jones");
var encoder:Base64Encoder = new Base64Encoder();
encoder.encode("testuser:testpass");
var credsHeader:URLRequestHeader = …Run Code Online (Sandbox Code Playgroud) apache-flex base64 actionscript urlrequest http-authentication
这严重杀了我.我正在尝试将Unix时间戳(1236268800,相当于2009年3月5日星期四,格林威治标准时间16:00:00)转换为Flex中的Date对象.
var timestamp:Number = 1236268800;
trace(new Date(timestamp));
Output: Wed Jan 14 23:24:28 GMT-0800 1970
Run Code Online (Sandbox Code Playgroud)
还试过这个:
var timestamp:Number = 1236268800;
var date:Date = new Date;
date.time = timestamp;
trace(date);
Output: Wed Jan 14 23:24:28 GMT-0800 1970
Run Code Online (Sandbox Code Playgroud)
这两种方法都应该有效.我在这做错了什么?
在Flex中,假设我有一个Class对象.如何获取它所代表的类的字符串?
例如:
var clazz:Class= String;
trace(clazz); // this gives "[class String]" but what I want is "String"
Run Code Online (Sandbox Code Playgroud) 我们有一个应用程序,用户必须在当前日期(用户使用该应用程序的日期)之后输入一个值不超过30天的日期.这是一个Flash应用程序,因此我需要一种方法将30天添加到当前日期,并获得正确的日期.像JavaScript中的东西:
myDate.setDate(myDate.getDate()+30);
Run Code Online (Sandbox Code Playgroud)
或者在C#中:
DateTime.Now.Add(30);
Run Code Online (Sandbox Code Playgroud)
ActionScript中有这样的东西吗?
Actionscript支持在BlazeDS中使用的[RemoteClass]元数据标记,以提供数据绑定提示,以便将AMF二进制对象从Java编组到BlazeDS.
例如:
Java: 包样本;
public class UserInfo
{
private String userName;
public String getUserName()
{
return userName;
}
public void setUserName(String value)
{
userName = value;
}
}
Run Code Online (Sandbox Code Playgroud)
动作:
[Bindable]
[RemoteClass(alias="sample.UserInfo")]
public class UserInfo
{
public var userName:String=”";
}
Run Code Online (Sandbox Code Playgroud)
在BlazeDS框架中如何实现[RemoteClass],你是否可以覆盖该行为并提供可以绑定到Actionscript [Bindable],[RemoteClass]类的自定义数据绑定远程处理框架(例如,JSON消息传递系统) ?
从某些xml我想找到具有特定属性和值的项目.
这是xml的示例:
<node>
<node>
<node>
<special NAME="thisone"></special>
</node>
<node>
<special>dont want this one</special>
</node>
</node>
</node>
Run Code Online (Sandbox Code Playgroud)
(节点可以包含节点......)
我需要找到第一个基于它的名为"NAME"的属性和值为"thisone"的属性.
然后我需要它的父(节点).
我试过这个:
specialItems = tempXML.*.(hasOwnProperty("NAME"));
但似乎没有做任何事情.
??
谢谢!
我有一个动作脚本3库项目"BG",它链接到类BGClass.BG包含一个实例名称为"bg"的Sprite,同样BGClass也有一个公共bg属性.所以这个类看起来像这样:
public class BGCass extends Base {
public var bg:Sprite;
public function BGCass() {
bg.width = 200
}
}
Run Code Online (Sandbox Code Playgroud)
一切正常.但是,如果我希望将公共bg移动到这样的Base类中,我就会得到错误.
public class BGCass extends Base {
public function BGCass() {
bg.width = 200
}
}
public class Base extends Sprite {
public var bg:Sprite;
public function Base() {
}
}
Run Code Online (Sandbox Code Playgroud)
我尝试在Base中使用getter setter并在BGClass中覆盖它们,但我仍然得到错误.这是Flash中的错误吗?是否有一个干净的解决方案或我是否需要创建某种代理变量以最终获得bg到Base?我知道在Flash中关闭"自动声明阶段实例"将消除错误,但我需要为设计师保留它.有解决方案吗
如何删除字符串中的最后4个字符?
'abcdefghijklmnopqrstuvwxyz'到'abcdefghijklmnopqrstuv'
答案:切片(0,-4)
我正在使用Actionscript 2.0
在一个全新的场景中.我唯一的代码是:
trace(int('04755'));
trace(int('04812'));
Run Code Online (Sandbox Code Playgroud)
结果是:
2541
4812
知道我做错了什么/傻吗?
顺便说一句,我从XML获取这个源代码,它已经领先于0.此外,这在Actionscript 3中也很完美.
actionscript ×10
apache-flex ×5
flash ×3
base64 ×1
blazeds ×1
cookies ×1
data-binding ×1
extend ×1
flex3 ×1
int ×1
remoting ×1
search ×1
string ×1
timestamp ×1
urlrequest ×1
xml ×1