Get Paypal Express cart结账前的价格
问题描述:
我正在使用PayPal快速结帐,并试图在用户决定结帐时获取购物车中的总价值。我的运费将以总价为基础,虽然我的PayPal帐户设置中填写了运费计算,但运费在结帐屏幕上并未显示。如何在结帐时获取总购物车价格,以便我可以添加运费?到目前为止,我所拥有的只是用户签出后的价值,他们会被退回到我的网站,但在这一点上,加入运费已经太迟了。Get Paypal Express cart结账前的价格
Dim authToken As String = "sdf5414FdsfDFS5eEF52s336DFLLJUhhbuzek64"
Dim txToken As String = Request.QueryString("tx")
txToken = "4GGSES84eEWSS"
Dim strRequest As String = "cmd=_notify-synch&tx=" & txToken & "&at=" & authToken
'Dim Payerinfo As New PayerInfo
'Dim trans As New Transaction
'Dim tra As New PayPal.PayPalAPIInterfaceService.Model.GetTransactionDetailsReq
'post back to either sandbox or live
Dim strSandbox As String = "https://www.sandbox.paypal.com/cgi-bin/webscr"
Dim strLive As String = "https://www.paypal.com/cgi-bin/webscr"
Dim req As HttpWebRequest = CType(WebRequest.Create(strSandbox), HttpWebRequest)
'req.Headers = valHeader
'Set values for the request back
req.Method = "POST"
req.ContentType = "application/x-www-form-urlencoded"
req.ContentLength = strRequest.Length
'Send the request to PayPal and get the response
Dim streamOut As StreamWriter = New StreamWriter(req.GetRequestStream(), Encoding.ASCII)
streamOut.Write(strRequest)
streamOut.Close()
Dim streamIn As StreamReader = New StreamReader(req.GetResponse().GetResponseStream())
Dim strResponse As String = streamIn.ReadToEnd()
streamIn.Close()
If Not String.IsNullOrEmpty(strResponse) Then
Dim results As New Dictionary(Of String, String)
Dim reader As New StringReader(strResponse)
Dim line As String = reader.ReadLine()
If line = "SUCCESS" Then
'FormView1.Visible = False
While True
Dim aLine As String
aLine = reader.ReadLine
If aLine IsNot Nothing Then
Dim strArr() As String
strArr = aLine.Split("=")
results.Add(strArr(0), strArr(1))
Else
Exit While
End If
End While
' Displays all the keys for results, helps to see what the keys are named for writing to text file
For Each kvp As KeyValuePair(Of String, String) In results
Dim v1 As String = kvp.Key
Dim v2 As String = kvp.Value
Response.Write(v1.ToString _
+ ": " + v2 + "<br /> ")
Next
End If
我也一直在试图定义一个session变量,并加入到它的每一个被点击的添加到购物车按钮的时间,但我看到这个问题,因为我不知道该项目将有多长留贝宝手推车,如果会话变量会话耗尽时间并被清除,他们将收到免费送货,因为运送金额清除。他们有什么方法可以做到这一点?
Protected Sub AddToCartBtn_Click(sender As Object, e As EventArgs)
Session("CartAmount")
Dim itemNumber As String = str2
Dim itemAmount As String = price
Dim currencyCode As String = "USD"
Dim addItem As Integer = 1
Dim ppHref As StringBuilder = New StringBuilder()
ppHref.Append("https://www.sandbox.paypal.com/cgi-bin/webscr?cmd=_cart")
ppHref.Append("&business=" + business)
ppHref.Append("&item_name=" + itemName)
ppHref.Append("&item_number=" + itemNumber)
ppHref.Append("&amount=" + itemAmount)
ppHref.Append("¤cy_code=" + currencyCode)
Session("CartAmount") = (cartTotal + Session("CartAmount"))
End Sub
我通过看和我没有看到有关获取购物车中共有什么,我是只是想念它?我看到了amount_x变量,但这意味着每次用户点击添加到购物车按钮时都必须保持运行总计,并将所有值添加到上面? – user3841709 2015-02-11 13:36:04
我还需要在结账完成之前获取价值,以便我可以评估和应用运费,我可以在用户结帐后获取总金额并将其重定向回我的页面,但此时我不知道如果我可以将运费增加到总价值 – user3841709 2015-02-11 17:01:05