我正在网上商店工作,应该可以按月支付20美元的费用来订购服务。
我在c#usercontrol中创建了一个脚本,该脚本将由umbraco预定任务命令每月调用:
<task log="true" alias="test60" interval="60" url="http://mysite/umbraco/subscriptionPayment.aspx"/>
为此,我有两个问题。
1)我应该在哪里放置usercontrol以使公众无法访问它,但umbraco任务命令可以访问它?非常重要的是,脚本只能由本地服务器命令访问。
2)我希望每次进行事务时脚本都会记录一个文件。我正在使用以下脚本:
File.AppendAllText("paymentlog.txt",
"Transaction "+transactionNumber.ToString() +" sucessfully executed at "+DateTime.Now.ToString() + Environment.NewLine);
我只是不知道应该给paylog.txt文件指定哪条路径,因为处理umbraco中的真实路径对我来说似乎有点模糊。我希望将paymentlog.txt文件放在root umbraco文件夹中。我该怎么做?
提前致谢(我正在运行umbraco 4.8和uCommerce 2.6.1)。
祝你好运, Brinck10
答案 0 :(得分:0)
umbraco中的任务调度程序不是非常可靠,这听起来对您的业务至关重要,所以我可能会尝试使用服务器上Windows中的调度程序构建来进行处理。
话虽如此。关于标记任务调度程序方法更安全,您可以使您调用的URL只能在localhost / 127.0.0.1上访问,并在任务配置中使用localhost地址。
答案 1 :(得分:0)
您可以调用用户服务来验证调用者是否已登录。以下代码将实现:
using UCommerce.Infrastructure;
using UCommerce.Security;
var authService = ObjectFactory.Instance.Resolve<IAuthenticationService>();
if (authService.IsAuthenticated())
{
// do secure code here
}